Author_Institution :
Jet Propulsion Lab., California Inst. of Technol., Pasadena, CA
Abstract :
It is known that software testers, more often than not, lack the time needed to fully test the delivered software product within the time period allotted to them. When problems in the implementation phase of a development project occur, it normally causes the software delivery date to slide. As a result, testers either need to work longer hours, or supplementary resources need to be added to the test team in order to meet aggressive test deadlines. One solution to this problem is to provide testers with a test automation framework to facilitate the development of automated test solutions. The benefits of test automation are most apparent in big software projects. The development of automated test cases requires a lot of effort and time during the first test campaign, but there is a significant amount of time that can be saved with each repetition. Test automation gives a software tester the possibility of achieving unattended testing capability. With end-to-end test automation, a tester can schedule tests to run autonomously. While tests are running, testers can utilize the time saved by performing any requisite manual testing, or developing additional automated test cases to increase test coverage. Automated testing saves time as it provides the capability to perform concurrent/parallel testing. A tester can run multiple tests at the same time, whereas manual tests only allow for sequential test runs. If test automation is employed, testing does not have to end when the workday ends; automated testing can be exercised 24times7. A test automation framework can provide numerous benefits to a software tester. A test automation framework provides the basic set of software tools and services that can aid testers as they develop automated test cases. With a test automation framework, software testers can focus on testing the software product instead of worrying about developing the infrastructure needed to support their test environment. When choosing or developing a tes- t automation framework, it is important to understand all the different components of an organization´s software system. A good test automation framework should be general enough to provide functions that help a tester create automated tests for all the different components of the delivered software system. The framework should also be easily extensible so it can evolve as the software system evolves. Whether creating one from scratch or using a commercial product, having a test automation framework available for test teams to use can help streamline the process of developing automated test solutions.
Keywords :
program testing; automated test solutions; concurrent-parallel testing; development project; end-to-end test automation; software product; software projects; software testers; software tools; test automation framework; unattended testing capability; Automatic testing; Automation; Laboratories; Performance evaluation; Propulsion; Scheduling; Sequential analysis; Software systems; Software testing; System testing;