Test automation won’t replace the agility and creativity that manual testing brings, but when properly deployed it is a cost-effective way to find issues quickly throughout the software development life-cycle and save valuable time. With the adoption of advanced automation approaches and automated testing frameworks, it’s now easier to get value from test automation and this is causing its take up to increase year on year.
But automating testing does not automatically lead to success. There are plenty of examples of products that have been tested using an automated approach, but simply do not live up to expectations. So how do you get test automation right?
- Select the right tests to automate. This is of huge importance and often the difference between wasting resources and money on automation that never delivers or an automation suite that gives value for money to the business.
- Lead the project from a business perspective. Automated test engineers, who are generally technical developers, aren’t usually the right people to lead automated test programmes. Left to their own devices they can produce test suites that are hard to maintain and debug, and often miss the point in simulating how a real end user will interact with the system. Will the tests they write exercise the system to find defects that impact the business most?
- Try to minimise the lock in to one technology. There are lots of automation testing tools out there and they are evolving fast. Try to implement an approach that allows you to migrate to a new (possibly open source) tool if it offers better value in emerging technologies or development methods.
The way organisations are meeting these needs is with a mixture of methods and technology. And at the heart of this sits test automation frameworks. These allow non-technical testers to build readable, data driven and behaviour driven scripts. The scripts use a structured form of natural English with no need for programming or code knowledge, which enables input to be constructed by business subject matter experts. A significant part of the cost of testing is getting the testers into a position where they understand what the system being tested does and how it should behave in different scenarios. The subject matter experts already know this, saving time and cost.
Automated testing frameworks translate the test scripts into executable tests and support all of the leading commercial and open source tools as engines to interface with the system under test and manage execution of tests. This includes full function commercial tools such as HP’s Unified Functional Tester (formerly QTP), through to open source tools such as Selenium Web Driver. The whole process can be integrated into and managed in a structured repository, as well as be part of any future move towards a continuous integration environment.
The automation framework takes the output of the tests and translates the raw results into meaningful business related outcomes. Additional information, such as screen shots and environment data, is also collected to support problem resolution. This output can be stored in accessible formats such as portals and structured repositories, giving easily understandable reports to help you make project and programme decisions.
If you'd like to learn more about test automation frameworks, please contact us and we'd be delighted to show you how this approach can be adapted to meet your goals.