Page 25 - SOFTWARE TESTING & QUALITY ASSURANCE
P. 25
Software Testing and Quality Assurance
Limitations of Manual Testing:
1. During the process of testing, the possibility of recurrence of a bug can actually have an impact
on the time taken for testing the software.
2. Frequent changes in the user scenarios can lead to high maintenance costs in manual testing.
3. Repetitive tests reduce the cycle time for executing a test, and hence automation testing is opted
for.
Depending on the limitations of time and cost factor, automation tests are preferred
over manual tests.
Advantages of Automation Testing
1. It reduces the time consumed to perform repetitive tests.
2. It requires less human effort and less number of resources.
3. It generates a test report which provides information of the test execution unlike a manual test
which is written and documented.
4. It helps in regression testing (Testing which is done to check whether the changes made in a
module affects the working of the other existing modules) and also helps in re-running tests
against new releases.
5. It helps in testing large sequences of data and transactions and also in randomly searching for
errors in the software.
6. It helps in testing several simultaneous users at a time virtually and can also analyze the load
generated for the program -- which cannot be done in manual testing.
7. It helps in testing web-based systems for performance reliability.
2.2 Role of a Software Tester
The role of a software tester is pivotal in the testing life cycle, as he/she is responsible for the activities
carried out in a testing life cycle. The main goal of a software tester is to find bugs, find them early and
also ensure that the changes incorporated due to the correction does not affect other functionalities.
Software developers have good problem solving skills and always demonstrate that the software works
as intended. A tester, on the other hand, demonstrates the weakness of an application. The application
developed is checked with test cases or configurations, which gives errors or unexpected results to
show where exactly the software breaks.
Some of the responsibilities of a software tester during the process of testing are:
1. Understanding the product/application by analyzing the specifications.
2. Implementing a test strategy, which includes writing appropriate test plans, prioritizing the
testing by assessing the risks, and setting up test data.
3. Setting up the test environment for manual and automated tests.
4. Providing reports that list the product defects and metrics.
There is a serious misconception that software testing is only an entry- level position in
the software industry and is a low pay job. There are various profiles that testing offers
which includes the positions of software test technicians, test engineers, test leads, test
managers, quality assurance engineers, quality auditors, and quality managers.
According to a survey across 367 IT organizations in 22 countries, the global software
testing market is estimated to reach US$56 billion by the year 2013 and requires 30,000
professionals globally every year.
18 LOVELY PROFESSIONAL UNIVERSITY