Test Automation

In successful quality assurance, software tests are repeated regularly during the software lifecycle. There are a couple of disadvantages, if the tests are solely performed manually by software testers. Manual test execution is often very time consuming and also error-prone. Human testers tend to become routine-blinded as they perform the same steps over and over again. Test automation can help to vastly improve the quality of your software. There is also no way around test automation, if you plan on using agile strategies for continuous integration and continuous deployment.

Let's find an efficient solution to automate your tests

The easily understandable advantages of test automation often lead to quick approaches that get thrown away again, as there are a few things to consider. In particular gui-automation tests are recorded and automated quickly in order to test your web application in a browser simulation. The first difficulties usually arise by answering the following questions:

How can you measure whether a test was successful?
How can you keep maintenance costs low even when you have to update your tests regularly?
How can you automate existing test cases efficiently?
How can you integrate tests in application life cycle management solutions?

These and many other questions are important in order to develop a long-term solution for test automation.

The advantages of test automation

If new features are developed for your applications, usually most older features only have to be adapted partially or not at all.  When it comes to testing a new release, with new features, your entire application should be re-tested again in order to reveal negative side effects.  This is where test automation demonstrates it's strengths compared to manual testing.

Improved quality by increased test coverage and precise metrics to quickly find errors in new releases.

Repeatability allows to reproduce test runs exactly and as often as desired in order to fix errors.

Reusability allows to reuse automated tests for testing new releases of your application. Depending on the changes, only some test cases have to be adapted usually. 

Parameterization enables the possibility to re-use the same test recording to cover multiple scenarios. (e.g. different products or customers in an order process). 

Cost reduction is simply given by the fact that it would take much more effort to reach the same level of quality through manual testing. 

Necessary speed, to keep up the pace of agile process models and still be able to do proper quality assurance. 

How we operate

Automating all test cases is usually not feasible and, in most cases, also not useful. In particular when it comes to determine the usability of an application, an assessment by a human is essential. Therefore, manual tests still play an indispensable role. With respect to this fact, we strive to increase the degree of test automation to the maximum by identifying all automatable test cases.  

In order to automate tests for web application we use the Selenium Webdriver or one of your existing test frame works. In any case we make sure to integrate the test automation approach into your existing management and steering systems (ALM, TFS, etc.). Eventually for maximum benefit the automated test cases and results shall be easily accessible by your test management team, as well as your developers.

If you also want to do performance and load testing you need test automation, as well. However, for load tests you usually need special recording software that ships with the load test tool to do the automation. This leads to the fact that test cases have to be recorded at least twice. Once by your test automation team and once by your load test team, whereas different recorders have to be used each time. Some manufacturers of load test tools already addressed this problem and provide options to migrate automated functional tests to load test scripts. Ultimately this leads to a more centralised test management, better communication between the teams, and it lowers the effort for maintaining test scripts.

You want to improve the skills of your own staff?

On request, we are happy to work together with your IT staff to pass on our knowledge while performing test automation for you. If you are looking for trainings regarding explicit topics about testing, we are also happy to come by. Feel free to contact us for further details.