Pex goal is to automatically and systematically produce the minimal set of actual parameters needed to execute a finite number of finite paths. It automatically produces a small test suite with high code and assertion coverage. It has been leveraged by the .NET team at Microsoft for Unit Testing core .NET components
HOW IT WORKS?
HOW IS PEX DIFFERENT?
With VS 2008 Unit Tests Framework and other unit test tools such as NUnit, the user has to provide all test inputs: individual values, ranges, a spreadsheet, or a database of some sort. Improper choice of inputs would lead to missed corner cases or a hugely redundant test suite, or both. With Pex, things change for the better, the user does not have to provide any input to the parameterized unit tests. By analyzing the program behavior at runtime Pex can generate inputs that matter, i.e. inputs that will increase the coverage of the test suite and expose bugs.
WHAT DOES PEX HAS IN IT FOR DEVELOPERS?
Pex Framework Libraries.
Seamless Integration with Visual Studio 2008
Suggestions and code snippets
Stubs and detour framework
Command Line support.
Pex Extension Points for popular Unit Testing Frameworks.