Types of Software Testing
Software Testing is that the process of executing a program with the aim of finding errors. to form our software to perform well it should be error-free. If testing is completed successfully it’ll remove all the errors from the software.
Principles of Testing:-
- All the tests should meet the customer requirements
- All the tests to be conducted should be planned before implementing it
- It follows the Pareto rule(80/20 rule) which states that 80% of errors come from 20% of program components.
- Start testing with small parts and extend it to large parts.
Types of Testing:-
1. Unit Testing
It focuses on the littlest unit of software design. In this, we test a private unit or group of interrelated units. It’s frequently done by the programmer by utilizing sample input and observing its corresponding outputs.
During a program, we are checking if the loop, method, or function is functioning fine, Misunderstood or incorrect, arithmetic precedence.Incorrect initialization
2. Integration Testing
The objective is to require unit-tested components and build a program structure that has been dictated intentionally. Integration testing is testing during which a gaggle of components is combined to supply output.
Integration testing is of 4 types:
(a) recorder testing:- it’s used for validation. In this, we ignore internal working mechanisms and focus on what’s the output?.
(b) White Box testing:- it’s used for verification. In this, we specialize in internal mechanisms i.ehow the output is achieved?
3. Regression Testing
Every time a replacement module is added results in changes within the program. this sort of testing makes sure that the entire component works properly even after adding components to the entire program.
In school, record supposes we’ve module staff, students, and finance combining these modules and checking if on the integration this module works fine is regression testing.
4. Smoke Testing
This test is completed to form sure that software under testing is prepared or stable for further testing It is called a smoke test because the testing of an initial pass is completed to see if it didn’t catch the hearth or smoke within the initial turn-on.
If the project has 2 modules so before getting to the module make sure that module 1 works properly.
5. Alpha Testing
This is a kind of validation testing. it’s a kind of acceptance testing that is completed before the merchandise is released to customers. it’s typically done by QA people.
When software testing is performed internally within the organization.
6. Beta Testing
The trial is conducted at one or more customer sites by the end-user of the software. This version is rolled out for a restricted number of users for testing during a real-time environment.
When software testing is performed for a limited number of individuals.
7. System Testing
This software is tested such it works fine for the various operating systems. it’s covered under the recorder testing technique. In this, we just specialize in the specified input and output without that specialization in internal working. In this, we’ve security testing, recovery testing, stress testing, and performance testing
This includes functional also as nonfunctional testing.
8. Stress Testing
In this, we provide defective conditions to the system and check how they do in those conditions.
(a) Test cases that need maximum memory or other resources are executed
(b) Test cases that will cause thrashing during a virtual OS
(c) Test cases that will cause excessive disk requirement
9. Performance Testing
It is designed to check the run-time performance of software within the context of an integrated system. it’s wont to test the speed and effectiveness of the program. it’s also called load testing. In it we check, what’s the performance of the system within the given load.
Checking a number of processor cycles.
10. Object-Oriented Testing
This testing may be a combination of varied testing techniques that help to verify and validate object-oriented software. This testing is completed within the following manner:
- Testing of Requirements
- Design and Analysis of Testing
- Testing of Code
- Integration testing
- System testing
- User Testing