16 Jun Automated testing
Automated testing is the action of testing one software program with another. We remove the human tester from the equation and run a program that mimics the tester’s actions to verify the correctness of the application.
Automated testing is becoming increasingly popular as software applications become larger and delivery times grow shorter.
One of the most widely-used types of automated test methodologies involves the use of an internet browser. When signing onto any web application you’ll use a browser program (Safari, Chrome, etc.) to access the desired site.
Most browsers have what are called “Plug Ins”, which is term used to describe an additional software program that you add, or “plug in” to your existing browser software.
Using these standard plug-in programs to facilitate automated testing is a quick, easy, low-cost way of getting additional test coverage for your application.
When creating an automated testing suite (a series of related individual tests), you can use one of these plug-in programs to create a recording of your actions as you perform manual tests of the application. These are not video recordings, but rather actual inputs, points and clicks, and navigation actions that you perform as you test the software.
When you begin the test, you’ll start the recorder (a function of your plug-in software). As you execute your manual test, the automated testing software will record your actions as lines of software commands and insert them into a file.
When you stop the recorder and save the resulting commands in a file, you will then have the ability to re-run that test at any time just by pressing a button.
The automated testing software will execute the commands, duplicating the test you previously ran without any intervention by you.
This ability to re-run tests at will without human intervention is the major benefit of automated testing.
But why re-run tests you’ve already run? Because this is a great way of building a Regression Test Suite. Re-running previously successful tests (Regression Tests) prior to each release will help to uncover bugs introduced into the existing system by new software.
Additionally, running these tests as part of an automated testing suite, as opposed to executing then manually, will save a tremendous amount of time during the test cycle of your project. In place of the time consuming task of manually re-running tests, you’ll simply run the automated tests and check the results when they’re done.
The use of automated testing is a powerful tool that will assist you in your goal of producing the highest possible quality software for your users.