Understanding the Components of End-to-End Test Automation and My Practical Suggestions
My opinionated suggestion to choose a correct technology stack for your E2E test automation.
This is my opinionated suggestion for the components of E2E Test Automation. Some will disagree; that’s your opinionated view, which I respect.
Table of Contents:
· 1. Scripting Language
· 2. Automation Frameworks
∘ 2.1 Web
∘ 2.2 Mobile
∘ 2.3 Desktop
∘ 2.4 API
· 3. Test Syntax Framework
· 4. Build Script
· 5. Test Data Creation
· 6. Test Scripting development and Debugging tool
· 7. Execution in a Continuous Testing Server
1. Scripting Language
- My Choice: Ruby
Why Ruby is the Best Scripting Language for End-to-End Test Automation?
- Not recommended: a complied language such as Java and C#
Automated Test Scripts Shall be in the Syntax of a Scripting Language, Naturally!
2. Automation Frameworks
An automation framework drives the application. As a general rule, use a free and open-source automation framework, preferably following an international standard, in web development, W3C, of course.
Don’t confuse tools with frameworks. Commercial tool vendors love to see that. For example, Quick Test Pro can be seen as a framework and a tool altogether. Avoid that.
“Choose a popular, proven, free and open-source automation framework; Then choose a dedicated tool (preferably, with free and commercial editions) for high productivity.” — Zhimin Zhan