“What is called a good Test Automation Framework”?
Nitesh Jain
Manager-QA/CSM/Istqb-TestManager | Tester for all the seasons and reasons
Its a need of industry as well as the organizations to save testing effort and time by establishing good test automation strategy and framework.
Test architects and managers along with test automation engineers have to think a lot about the components and integration of different tools to make a complete scalable and efficient test automation framework.
As open source has a variety of compatible tools available to help on making a good framework and integrations with other supporting tools, the effort is now shifted as to how we can use different tools efficiently.
Here I am listing some key points as questions. If you are able to comprehend and answer these, and you know how to integrate these with each other, then you are on the right path:
1. How to connect with test data, and how to manage it at one place:
Test input data management is one of the primary components in a framework. You have to make your input files in such a way that is easily and conveniently accessible to code for different test environments.
2. How to write efficient code:
Code efficiency is another important thing to consider. The more reusable and optimized code you are writing, the more it will be helpful in future maintenance of code.
Whenever you write test scripts, think about the questions below:
Will it will be reusable?
Can we develop it based on testing a page?
How to add a new test page and its functions?
Where will the code be stored
How do we manage versions of the automated code?
How and when to connect two UI pages?
3. What devices will be under test, what version of OS will there be?
4. What will be the reporting mechanism?
5. What different browsers do we have to set?
6. Who will be able to see the reports and how? And when should we send reports to respective stakeholders?
In the last decade, technical evolution has been evolving in order to resolve all of these questions.
The most preferred and open source way is by using Selenium+Java(or any other language) +Maven+Git+Jenkins(or any other build or scheduler tool) and this all helps a lot in achieving this.
TestProject has come up with a great idea to integrate all of these things seamlessly, and is providing a very easy to understand and very easy to work with user interface to set up everything!
https://docs.testproject.io/getting-started/what-makes-testproject-unique
This is highly recommended if you are starting a new test project or if you are looking for converting your existing test framework to an easy and fast developed test suites.
Let me know your thoughts on this.