Types of Software Testing

There are many different types of software tests, each with specific objectives and strategies.

In each case, validating base requirements is a critical assessment. Just as important, exploratory testing helps a tester or testing team uncover hard-to-predict scenarios and situations that can lead to software errors.

Even a simple application can be subject to a large number and variety of tests. A test management plan helps to prioritize which types of testing provide the most value – given available time and resources.

Testing effectiveness is optimized by running the fewest number of tests to find the largest number of defects.

Acceptance testing:

 Verifying whether the whole system works as intended.

Integration testing:

 Ensuring that software components of functions operate together.

Unit testing:

 Validating that each software unit performs as expected. A unit is the smallest testable component of an application.

Functional testing:

 Checking functions by emulating business scenarios, based on functional requirements. Black-box testing is a common way to verify functions.

Regression testing:

 Checking whether new features break or degrade functionality. Sanity testing can be used to verify menus, functions and commands at the surface level, when there is no time for a full regression test. 

Stress testing:

 Testing how much strain the system can take before it fails. Considered to be a type of non-functional testing.

Usability testing:

 Validating how well a customer can use a system or web application to complete a task. 

You might also enjoy