1. Box Testing specifically tests the functionality of the software and doesn’t pay heed to internal design.
2. White Box Testing checks the various internal software and codings that the software is built on. Code coverage is the main factor.
3. Unit Testing deals with the checking of the modules that the software is broken into and requires detailed knowledge of coding, hence usually done by the programmers.
4. Incremental Integration Testing tests the application continuously to make sure that the various added functions works perfectly.
5. Integration Testing checks the modules when they are integrated with each other and heir dependency.
6. Functional Testing deals with the output that the software provides due to specific inputs provided.
7. System Testing provides test results for the whole system at a go instead of checking the various modules. It provides an all over the result for the entire software system.
8. End-To-End Testing shows how the software you have developed will work in an environment which is same as the real world.
9. Sanity Testing tests the software for its stability. It pushes the software to the extreme limits to show how it would work under pressure.
10. Regression Testing is one of the major types of software testing