Software Engineering - Old Questions

9. What are the types of software testing? Explain.

6 marks | Asked in 2069

Testing is the process of executing a program with the aim of finding errors. To make our software perform well it should be error-free. If testing is done successfully it will remove all the errors from the software. 

Types of testing:

1. Unit Testing: It focuses on the smallest unit of software design. In this, we test an individual unit or group of interrelated units. It is often done by the programmer by using sample input and observing its corresponding outputs.


2. Integration Testing: The objective is to take unit tested components and build a program structure that has been dictated by design. Integration testing is testing in which a group of components is combined to produce output. 


3. System Testing: System testing is a software testing where a complete and integrated software is tested to verify that it meets specified requirements. It is done after integration testing. This plays an important role in delivering a high-quality product. It falls under the class of black box testing.


4. Acceptance Testing: Acceptance testing is done to verify if system meets the customer specified requirements. User or customer do this testing to determine whether to accept application. It has two types:

    i) Alpha testing: Alpha testing is a type of testing performed to identify bugs before releasing product to real users. It is typically done by QA people. 

    ii) Beta testing: The beta test is conducted at one or more customer sites by the end-user of the software. This version is released for a limited number of users for testing in a real-time environment .


5. Regression Testing: Every time a new module is added leads to changes in the program. This type of testing makes sure that the whole component works properly even after adding components to the complete program.