Test Automation Framework
When starting a project, teams often spend their time re-inventing the ‘automated testing wheel’. While every project has it’s own challenges and every team it’s own needs, many things exist as common requirements of a flexible test automation framework.
This post introduces an effective Java test framework that can be used to quickly get started with test automation on a Java project.
The OpenCredo approach is proven and used across a number of live projects. It is updated as new ideas are explored and new discoveries made. The Framework supports easy maintenance of test cases and system interaction code to ensure that the Framework will scale as the project grows.
The Framework covers API acceptance, UI acceptance and performance testing, with working examples on the use of each. The sample code demonstrates the following basic concepts:
- Behaviour driven development
- Safely sharing state
- Dependency injection
- Externalised configuration
- Maintainable test architecture
- Automated report generation
The Framework utilises the following readily substitutable tools:
- Spring / Spring Web
- Selenium Webdriver
The project is available for download from GitHub, and we welcome pull requests with useful helper classes and general improvements to the Framework. For those with some familiarity with the tools involved usage should be self-explanatory.
If you are still investigating test automation and are unsure of how best to implement in your organisation, we have whitepapers and case studies dedicated to helping you to understand the benefits and implementation implications. They can be found in our test automation framework section.
Test Automation Concepts
A series of blog posts using this framework to introduce and explain common concepts of test automation will be created over time, with this list updated as they are published. The posts have been divided based on their complexity.