# Choosing the Right Tool
{%hackmd 1lpg7PuqRoaui6XyJcrylw %}
## 測試工具
> 工具可以解決/製造問題?
輔助測試活動的工具
- Requirement management tool [(e.g. JIRA, Modern Requirements)](https://www.guru99.com/requirement-management-tools.html)
- Configuration management tool [(e.g CHEF, Ansible, Puppet)](https://www.guru99.com/software-configuration-management-tools.html)
- **Test execution tool**
- Incident (Bug) management tool [(e.g. Mantis, JIRA, RedMine)](https://www.guru99.com/top-20-bug-tracking-tools.html)
- Test management tool [(e.g. Xray, TestLink, Testpad)](https://www.guru99.com/top-20-test-management-tools.html)
## Test execution tool
- Automation Testing Tools [(e.g. Selenium, WinAppDriver, Appium)](https://www.guru99.com/automated-testing-tools.html)
- **Test Automation Frameworks (e.g. Robot Framework, Cucumber)**
### Test Framework
- A testing framework is a set of guidelines or rules used for creating and designing test cases.
- coding standards
- test-data handling methods
- how to access external resources
- storing test results
- A framework is comprised of a combination of practices and tools that are designed to help QA professionals test more efficiently.
### Type of Test Automation Framework
- 根據「Framework本身」的開發方式(規則)
- 根據適用的「產品」開發模式
- 根據適用的Test Level
- 根據「Framework本身」的開發方式(規則)
- Record&Playback (Linear)
- Data Driven
- Keyword Driven
- Hybrid
- 根據適用的「產品」開發模式
- Test Driven Development
- Acceptance Testing Driven Development
- Behavior Driven Development
- 根據適用的Test Level
- Unit Test
- Integration Test
- System Test
- Acceptance Test
:::info
- [Software Testing: An ISTQB–BCS Certified Tester Foundation guide p.45](https://www.utcluj.ro/media/page_document/78/Foundations%20of%20software%20testing%20-%20ISTQB%20Certification.pdf)
- [Levels of Testing - Guru99](https://www.guru99.com/levels-of-testing.html)
:::
### Type of Test Automation Framework
- 根據「Framework本身」的開發方式(規則): Data Driven, Keyword Driven, Hybrid
- 根據適用的「產品」開發模式: TDD, ATDD, BDD
- 根據適用的Test Level: Unit Test, Integration Test, System Test, Acceptance Test
:::info
:bulb: 依據框架的設計使用,才會有好的投資報酬率。
:::
## Test execution tools payback model

## Factors of Choosing A Test Automation Framework
- Maintainability
- Cummunity
- Version Control
- Skills (Coding Language)
- Integrability
- Requirement management tool
- Incident(Bug) management tool
- Test management tool
- Tracibility
- Report
- Requirements Mapping