The Visual Studio Test Extensions provides extensions and tools for the Visual Studio MSTest engine.

This project contains two main features which are independent :
  • Extension of the MSTest engine which offer an simple extensibility infrastructure by .NET attributes to run some task before and after the tests. This infrastructure allows to execute each unit tests in a separate AppDomain.
  • A collection of tools, like Microsoft assertion classes, to check easly the results of unit tests.
The Visual Studio Test Extensions project is an open source project powered by the P.O.S Informatique french company.

Features

  • Allows to execute each unit test in a separate AppDomain.

Why to execute each unit test in a separate AppDomain ?

When you run all your tests by the MSTest engine, all tests are executed in the same AppDomain. It’s mean that your assembly code is loaded only one time and static variables are shared for all the tests ! It can be problematic if you try to test some singleton classes or static caches. Visual Studio Test Extensions allows to execute each unit test in a separate AppDomain in order to avoid conflicts of static fields between tests.

IMPORTANT: Running each unit test in a separate AppDomain mean that your assembly code will be load for each unit tests, so it will run your tests more slowly…

How to run tests in the Visual Studio Test Extensions infrastructure ?

See the Documentation to know how to run tests in the Visual Studio Test Extensions infrastructure.

Roadmap

  • Give some unit test projects examples
  • Add the support of Visual Studio 2010
  • Add the support of Visual Studio 2013
  • Attribute extension to execute SQL Server script (=> I will explain in the documentation my own unit test strategy to easly do unit tests on databases).
  • Attribute extension to customize string connections
  • Attribute extension to customize application settings
  • Attribute extension to use an other configuration file
  • Attribute extension to execute the unit test with other credentials
  • Helper to query a SQL Server database
  • Exception assertion
  • Enumerable assertion
  • File assertion
  • Datatable assertion
  • JSON helper serialization

Last edited Oct 5, 2013 at 8:24 PM by GillesTourreau, version 7