Page 135 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 135
Software Testing and Quality Assurance
In automated testing, all the tests are performed in the test program. The results of these tests are
automatically added to the database. The advantage of recording in a database is that the information
about the bugs of the software can be recognized using the statistics available in the database. The best
way to increase efficiency, competence, and coverage of software testing is to use the automated
software testing.
The automated software testing tools help in playing the pre-recorded and pre-defined actions,
comparing the results with the expected behavior, and reporting the success of the manual tests to a test
engineer. The automated tests can be repeated, and if required, used to perform tasks not possible with
manual testing. This is the reason for automated software testing being an essential component of
successful development projects.
9.1 Benefits of Automation Testing
Automation testing uses strategies, tools, and artifacts that reduce the need of manual or human
involvement in unskillful, repetitive, or redundant tasks. Automation has greater test coverage, which
encourages organizations to test more often and more completely.
The process of automation includes the following:
1. Complete test cases, including predictable results.
2. A standalone test environment, which includes a test database that is restorable to a known
constant such that the test cases can be repeated each time there are modifications made to the
application.
There are many benefits of test automation. Automated tests reduce the time that is required to test
certain conditions. The speed of testing in comparison to manual testing is different – automation
testing is fast – it takes an average five seconds to test conditions. Discussed below are a few benefits of
automation testing:
1. Automated Software Testing Helps in Saving Time and Money: It is seen that the software tests
have to be repeated on a regular basis during development cycles to ensure quality. Whenever a
source code is modified, software tests should be repeated. For every release of the software, it
should be tested on all supported operating systems and hardware configurations. It is not
possible to repeat these tests manually as it is costly and time consuming. Once the tests are
created, automated tests can be run several times at no additional cost and they are much faster
than manual tests. Automation testing can be run through the night which saves testing time.
Automated software testing helps in reducing the time required to run repetitive tests from days
to hours.
2. Automated Software Testing Helps in Improving Accuracy: Even the most careful tester will
commit mistakes during monotonous manual testing. Automated tests perform the similar steps
precisely, every time they are executed and always record detailed results.
3. Automated Software Testing Helps in Increasing Test Coverage: Automated software testing
increases the depth and scope of tests that help in improving software quality. The lengthy tests
avoided during manual testing can be run unattended. These tests can be performed on multiple
computers with diverse configurations. The automated software tests help in executing different
complex test cases during every test run, providing coverage not possible with manual tests.
With the arrival of automated software testing in the market, the complex features are being dealt
with and the testers need not repeat manual tests. This in turn provides more time to create new
automated software tests.
4. Automated Software Testing Helps in Performing Tasks which Cannot be Performed by Manual
Testing: It is not possible to execute a controlled web application test with thousands of users.
The automated software testing replicates several virtual users interacting with network or web
software and applications.
128 LOVELY PROFESSIONAL UNIVERSITY