Ad Topics

Models

  • 'Waterfall' Testing
  • 'V-Model' Testing
  • 'Iterative' Testing
  • 'Agile' Testing

Methods

Types

  • Smoke Testing
  • Installation Testing
  • Functional Testing
  • Look & Feel Testing
  • Usability Testing
  • Compatibility Testing
  • Performance Testing
  • Security Testing
  • Conformance Testing
  • Regression Testing

Artifacts

Metrics

Tools

  • Test Management Tools
  • Defect Tracking Tools
  • Functional Testing Tools
  • Performance Testing Tools
  • Unit Testing Tools

Resources

The list of articles above is all we got at this moment. Over the weekends, we are working on the remaining content. Join/Follow/Subscribe us if you want to be notified of our updates.

Software Testing Levels

There are four levels of software testing: Unit >> Integration >> System >> Acceptance.

Unit Testing is a level of the software testing process where individual units/components of a software/system are tested. The purpose is to validate that each unit of the software performs as designed.
Integration Testing is a level of the software testing process where individual units are combined and tested as a group. The purpose of this level of testing is to expose faults in the interaction between integrated units.
System Testing is a level of the software testing process where a complete, integrated system/software is tested. The purpose of this test is to evaluate the system’s compliance with the specified requirements.
Acceptance Testing is a level of the software testing process where a system is tested for acceptability. The purpose of this test is to evaluate the system’s compliance with the business requirements and assess whether it is acceptable for delivery.

Note: Some tend to include Regression Testing as a separate level of software testing but that is a misconception. Regression Testing is, in fact, just a type of testing that can be performed at any of the four main levels.

Acceptance Testing

Acceptance Testing Definition, Analogy, Method, Tasks, Details:

DEFINITION

Acceptance Testing is a level of the software testing process where a system is tested for acceptability.

The purpose of this test is to evaluate the system’s compliance with the business requirements and assess whether it is acceptable for delivery.

[...]

System Testing

System Testing Definition, Analogy, Method, Tasks, Details:

DEFINITION

System Testing is a level of the software testing process where a complete, integrated system/software is tested.

The purpose of this test is to evaluate the system’s compliance with the specified requirements.

[...]

Integration Testing

Integration Testing Definition, Analogy, Method, Tasks, Details, Approaches, Tips:

DEFINITION

Integration Testing is a level of the software testing process where individual units are combined and tested as a group.

The purpose of this level of testing is to expose faults in the interaction between integrated units.

Test drivers and test stubs are used [...]

Unit Testing

Unit Testing Definition, Analogy, Method, Tasks, Details, Benefits, Tips:

DEFINITION

Unit Testing is a level of the software testing process where individual units/components of a software/system are tested. The purpose is to validate that each unit of the software performs as designed.

A unit is the smallest testable part of software. It usually has [...]