Catch and Release with Automated Software Testing
In addition to improving implementation during the software development phase, Automated Software Testing (AST) can also be very beneficial during the release stage of a system’s lifecycle. Automated tests can yield a high return on investment (ROI), as they reduce the time and expenses during this “live” phase. There are many functions AST can perform at this point, including:
1. Troubleshoot and easily reproduce test cases – AST can use existing artifacts to run test cases that reveal production issues. These test outputs can include recordings or videos of issues which can be sent to the developer for correction. The ease of test repeatability supports the troubleshooting and modification of issues.
2. Identify program areas affected by changes – As fixes are incorporated into the system during the release phase, testing must be repeated to check the areas or components potentially affected by the fix. This retesting can be time consuming—especially if everything is retested manually. AST enables the pinpointing of regression testing on the affected areas only—reducing the timeframe of the release testing cycle.
3. Verify the quality of the correction – Once corrections are made to a program, AST can run automated regression tests to verify that the patch or fix actually corrected the issue. Regression testing also checks for any new problems that may have occurred as a result of the fixes.
4. Support System Trouble Reporting (STR) – AST can support both an effort to prioritize uncovered defects and an analysis of the root cause of the problem, including:
- an evaluation of the regression test procedures already in place
- automation of test procedures for the STR
- an evaluation of the test report to identify the root cause
- automation of additional necessary tests
The overall goal of implementing software testing during the release phase is to prevent defects from making it to the customer. Automation enables developers to more efficiently implement preventative measures and run additional retests. However, if a fix is needed, AST can also help reproduce issues and support targeted fixes.
Some information taken from: Dustin, Elfriede, Thom Garrett, and Bernie Gauf. Implementing Automated Software Testing: How to save Time and Lower Costs While Raising Quality. Upper Saddle River, NJ: Addison-Wesley, 2009. This book was authored by three current IDT employees and is a comprehensive resource on AST. Blog content may also reflect interviews with the authors.