List of unit testing frameworks

From Wikipedia, the free encyclopedia

This page is a list of tables of code-driven unit testing frameworks for various programming languages. Some of these are based on xUnit, but not all of them are.

Contents

[edit] Columns

  • Name: This column contains the name of the framework and will usually link to it.
  • xUnit: This column indicates whether a framework should be considered of xUnit type.
  • Generators: Indicates whether a framework supports data generators. Data generators generate input data for a test and the test is run for each input data that the generator produces.
  • Fixtures: Indicates whether a framework supports test-local fixtures. Test-local fixtures ensure a specified environment for a single test.
  • Group fixtures: Indicates whether a framework supports group fixtures. Group fixtures ensure a specified environment for a whole group of tests.
  • Other columns: These columns indicate whether a specific language / tool feature is available / used by a framework.
  • Remarks: Any remarks.

[edit] Languages

[edit] ActionScript / Flex

Name xUnit Remarks
FlexUnit
AS2Unit
AsUnit Flash Players 6, 7, 8 and 9
As2lib Unit Test

[edit] Ada

Name xUnit Remarks
AUnit
TBrun

[edit] BPEL

Name xUnit Remarks
BPELUnit

[edit] C

Name xUnit Remarks
GNU Autounit
Check Yes
CUnit Yes
CUT No
GUnit for GNOME
MinUnit
TBrun
Cgreen includes mocks
CuTest cute unit testing
EmbeddedUnit Embedded C

[edit] C++

Name xUnit Fixtures Group fixtures Generators Mocks Exceptions Macros Templates Grouping Remarks
Boost Test Library No No No Yes No Yes User decision Yes Suites Part of Boost
C++test
CPPUnit Yes Yes Yes No No No Yes No Suites http://cppunit.sourceforge.net/cgi-bin/moin.cgi
CppUnitTest No No No No No Yes Yes No Suites http://sourceforge.net/projects/cppunittest/
CppUnitLite Yes No No No Yes No Suites
cxxtest Yes Yes Yes No Yes Optional Yes No Suites Uses a simple C++ parser and code generator for test registration. Code generators in Perl and Python.
NanoCppUnit No Yes Yes No No No Yes Yes Suites Proof-of-concept
OAKUT No No Yes Yes (XML) No Yes Yes Yes XML Uses shared libraries / DLLs
QuickTest No No No No No Yes Yes Yes No
QUnit No No No No No No No No No 50 lines of code only
TBrun Commercial
SymbianOSunit Based on CxxUnit
Test soon No Yes Yes Yes Not yet Auto-detect Yes Yes Macro (namespaces) Complex macro logic
TUT No No Yes No No Yes Yes Yes Templates Templates for registration
Unit++
UnitTest++ No Yes No No Yes Yes Yes Yes Suites Release notes

[edit] ColdFusion (CFML)

Name xUnit Remarks
CFUnit
cfcUnit Yes

[edit] Delphi

Name xUnit Remarks
DUnit
DUnit at SourceForge

[edit] Emacs Lisp

Name xUnit Remarks
ElUnit

[edit] Fortran

Name xUnit Remarks
fUnit
FRUIT

[edit] Haskell

Name xUnit Remarks
HUnit

[edit] Internet

Name xUnit Remarks
HtmlUnit
HttpUnit testing framework for web applications, typically used in combination with JUnit
IEUnit testing framework for web applications, based on IE browser and Javascript
Canoo WebTest

[edit] Java

Name xUnit Remarks
JTiger
JUnit Yes
DBUnit a JUnit extension to perform unit testing with database-driven programs
JUnitEE a JUnit extension for testing Java EE applications
GroboUtils a JUnit extension providing Automated documentation, class hierarchy unit testing, code coverage, and multi-threaded tests.
TestNG

[edit] JavaScript

Name xUnit Remarks
JSUnit
Crosscheck
J3Unit
JSNUnit

[edit] Lasso

Name xUnit Remarks
L-Unit

[edit] MATLAB

Name xUnit Remarks
mlUnit Yes
MUnit: Matlab Unit Testing The code is not available for download and an additional license restriction appears to violate the GPL, under which the code is purportedly licensed.

[edit] MySQL

Name xUnit Remarks
utMySQL

[edit] .NET programming languages

Name xUnit Remarks
csUnit Yes includes GUI, command line, VS2005 plug-in; supports C#, VB.NET, Managed C++, J#, other .NET languages; integrated with ReSharper
NUnit Yes
Visual Studio 2005 Team Edition includes a comprehensive set of unit testing tools
MbUnit

[edit] Objective-C

Name xUnit Remarks
ObjcUnit
OCUnit
UnitKit
OCZanebug
WOTest

[edit] Ocaml

Name xUnit Remarks
OUnit Based on HUnit, which is based on JUnit
TestSimple Generates TAP
FORT

[edit] PegaRULES Process Commander

Name xUnit Remarks
PRUnit

[edit] Perl

Name xUnit Remarks
TAP the Test Anything Protocol used by most Perl tests
Test::Harness the standard Perl test runner and TAP parser
Test::More included with all modern Perl installations
Test::Class Yes xUnit style testing adapted to Perl
Test::Builder a module for making more testing modules
Test::Unit (a.k.a. PerlUnit) Yes a fairly straight port of JUnit to Perl

[edit] PHP

Name xUnit Remarks
PHPUnit Yes
SimpleTest SimpleTest
Testilence Yes
Code Igniter

[edit] PL/SQL

Name xUnit Remarks
utPLSQL
Quest Code Tester for Oracle a complete Pl/SQL testing tool from the makers of Toad and Steven Feuerstein
pl/unit

[edit] PowerBuilder

Name xUnit Remarks
PBUnit

[edit] Prolog

Name xUnit Remarks
PlUnit

[edit] Python

Name xUnit Remarks
PyUnit
XPyUnit adding XML report generation to PyUnit
TestOOB an extended test framework for PyUnit
Doctest
Nose a discovery-based unittest extension
py.test

[edit] REALbasic

Name xUnit Remarks
RBUnit No

[edit] Ruby

Name xUnit Remarks
Test::Unit Yes
RSpec Behaviour-driven development framework

[edit] SAS

Name xUnit Remarks
FUTS the Framework for Unit Testing SAS

[edit] Scala

Name xUnit Remarks
Rehersal with JMock like Expectations and natural language test names

[edit] Shell

Name xUnit Remarks
ShUnit No longer actively maintained
shUnit2 Originally developed for log4sh

[edit] Simulink

Name xUnit Remarks
slUnit

[edit] Smalltalk

Name xUnit Remarks
SUnit

[edit] SQL

Name xUnit Remarks
SQLUnit
Visual Studio Team Edition for Database Professionals

[edit] Tcl

Name xUnit Remarks
tcltest

[edit] Transact-SQL

Name xUnit Remarks
TSQLUnit
Visual Studio Team Edition for Database Professionals

[edit] Visual FoxPro

Name xUnit Remarks
FoxUnit

[edit] Visual Basic

Name xUnit Remarks
vbUnit for Visual Basic and COM objects
VbaUnit for Visual Basic for Applications
ExcelVbaUnit for Excel VBA
csUnit Yes for Visual Basic .NET; includes GUI, command line, VS2005 plug-in

[edit] XML

Name xUnit Remarks
XUnit for testing
  • native XML programs,
  • individual XSLT templates,
  • and Java programs that are dealing with XML datas

[edit] XSLT

Name xUnit Remarks
UTF-X unit testing framework for XSLT that strongly supports the test-first-design principle with test rendition and test validation features
XSLTunit proof of concept unit testing framework for XSLT

[edit] Other

Name xUnit Remarks
Test Manager
IdMUnit yes Identity management

[edit] See also

Unit testing in general:

Extreme programming approach to unit testing:

[edit] External links

In other languages