- customer;
- company;
- project manager.
Customer
Practically, there are 2 reasons why customer needs testing. That is,
- to ensure business objectives are satisfied by products;
- to minimize risk from deploying products or changes into production.
- required features are provided by products;
- required features are working as per expected;
- required features are delivered in time and within budget.
Company
Company refers to people who runs the company or in charge of selling products of the company. In general, there is only one reason for them to request testing. That is,
- to gain advantage in market over competitors.
- the products can help customers to achieve business needs consistently;
- the company can deliver what customers need consistently.
Project Manager
There is only 1 reason why project manager requires testing. That is,
- to ensure products are acceptable by customers.
- required features are delivered by products;
- required features are working as per expected.
Some people may suggest that developer also wants testing. It is absolutely clear that testing by developer should be part of the overall testing strategy. However, testing is very often blamed by developer to stop or delay their delivery of software to customers. Therefore, it is obvious that there are mixed emotions within developer towards testing. Most important of all, they don't really want testing when they come under pressure to deliver. Unfortunately, this is always the situation for developer.