List of unit testing frameworks

This is a list of notable test automation frameworks commonly used for unit testing. Such frameworks are not limited to unit-level testing; can be used for integration and system level testing.

Frameworks are grouped below. For unit testing, a framework must be the same language as the source code under test, and therefore, grouping frameworks by language is valuable. But some groupings transcend language. For example, .NET groups frameworks that work for any language supported for .NET, and HTTP groups frameworks that test an HTTP server regardless of the implementation language on the server.

Columns
The columns in the tables below are described here.


 * Name: Name of the framework
 * xUnit: Whether classified as xUnit
 * TAP: Whether can emit Test Anything Protocol (TAP) output
 * Generators: Whether supports data generators generating test input data and running a test with the generated data
 * Fixtures: Whether supports test local fixtures associating a test environment with a single test
 * Group fixtures: Whether supports group fixtures associating a test environment with a group of tests

Some columns do not apply to some groupings and are therefore omitted from that groupings table.

Ant
For Apache Ant tasks.

AppleScript
For AppleScript.

Visual Basic (VB6.0)
For unit testing frameworks for VB.NET, see .NET languages.

C#
See .NET languages below.

Fortran
MPI column: Whether supports message passing via MPI - commonly used for high-performance scientific computing

Groovy
All entries under Java may also be used in Groovy.