What are the attributes of a good framework?
The characteristics include:
- Modular: The framework should be adaptable to change. Testers should be able to modify the scripts as per the environment or login information change.
- Reusable: The commonly used methods or utilities should be written in a common file that is accessible to all the scripts.
- Consistent: The suite should be written in a consistent format by following all the accepted coding practices.
- Independent: The scripts should be written in such a way that they are independent of each other. In case one test fails, it should not hold back the remaining test cases (unless it is a login page)
- Logger: It is good to have implemented the logging feature in the framework. This would help in case our scripts run for longer hours (say nightly mode), if the script fails at any point of time, having the log file will help us to detect the location along with the type of the error.
- Reporting: It is good to have the reporting feature automatically embedded into the framework. Once the scripting is done, we can have the results and reports sent via email.
- Integration: Automation Framework should be such that it is easy to integrate with other applications like continuous integration or triggering the automated script as soon as the build is deployed.