Bug hunting doesn’t embody the whole software testing; it might be one of the frequent and vital responsibilities of the software tester but not the only one. So, we cannot say that software testing is just bug hunting. As, software testers focus on all the vital aspects that are involved in launching the quality software application. Customers demand high quality software and comes with tighter budgets and timelines. Hence, its scope is beyond JUST bug hunting. As a matter of fact, bug cannot be found without prior domain knowledge of particular software. Software testers have a lot of tasks to do besides bug hunting.
The purpose of software testing is not only revealing bugs. There are many other tasks involved in Software testing process like:
- Software Testers perform exploratory testing i.e. they explore the features, functions, requirements and design of the application that comes under test.
- It is a technique for verification and validation.
- Testers do acceptance testing to make sure that AUT meets the business and technical requirements that lead to its design and development.
- They look for risks, i.e. for the situations that seem likely to produce bugs, and notify developers to eradicate that risk before it will cause any damage to the system. A Tester is driven by curiosity and relentless question “what if”?
- Software Testers notice the behavior of the product that is likely to go wrong in many important aspects, even if they haven’t yet seen it happening. They always yearn to find out each and every inconsistency in the software that can threaten the quality of application under test.
- Testers find boundaries (performance testing), they push software to the verge/edge to answer “what is the minimum or maximum amount of load or stress that this software can handle and still be useful?”.
- Software Testers also analyze the response time, they measure the average page response time and determine if the performance is acceptable at both average and maximum user loads.
- They verify usability issues i.e. to know how user interacts with the application. What is his satisfaction level or user experience? Did he enjoy using the application? Did he get what he was actually looking for? Did the design make him to perform the task for which the application was built? Did the user find it graphically eye catching?
- Testers find dependencies of the Software. Software can have unknown dependencies or assumed dependencies that don’t exist. Example: Finding that an application requires a specific port open to function. Or user must first login to access the features etc.
- Software testers assess compatibility issues, to ensure compatibility of an application or Web site with different browsers, Operating Systems and different hardware platforms.
- Software testers give suggestion to the developers for the improvement of the application.
Hence it’s (software testing) not just bug hunting; software testers aim to cover all the perspectives that ensure the quality of software.