Test Harness is a collection of software and test data configured to test a program unit by running it under varying conditions and monitoring its behaviour and outputs. 1 It allows #test facility #automation.
A viable Test Harness consists of several functionalities: @Hunt1999
- a standard way of set-up and clean-up
- a method for selecting individual test or all available tests
- a means of analysing output for expected or unexpected results
- a standardised form of failure reporting (via logging)
Examples of test harness are:
- xUnit.net (for .Net platform) 2
- Visual Studio Unit Testing Framework 3
- NUnit (for .Net platform) 4
- Google Test (#cpp) 5
- JUnit (#java) 6
- Pytest (#python) 7
- SUnit (Smalltalk) 8
Note: When professional mentions xUnit, they are usually referring to the xUnit interface, not the one that provide unit testing framework for .Net platform. xUnit consists of a collection of uniting testing frameworks which derived from the SUnit interface.