Spec Explorer is a Model-Based Testing tool from Microsoft. It extends the Visual Studio integrated environment with the ability to define a model describing the expected behavior of a software system. Using this model you can generate tests automatically for execution within Visual Studio's own testing framework, or many other unit test frameworks.

You write models in a mainstream programming language (C#), accompanied by configuration files in a scripting language called Cord (short for "Coordination Language").

The name Spec Explorer comes from its power to explore these models (aka specifications) in order to discover all the potential behaviors they define, and present a graphical view of the result. Although the outcome of an exploration can be huge, the Cord language provides a very intuitive way to reduce it by selecting scenarios relevant for testing. If you have encountered purely state oriented tools, you will find Spec Explorer has very effective ways to deal with the notorious "state explosion" problem.

Spec Explorer is the latest and greatest in a family of tools for Model-Based Testing, originating from Microsoft Research and backed up by many research articles and collaborations. Our full-fledged product engineering team in the Windows Server Division, distributed between Redmond and Beijing, carries on enhancing and supporting Spec Explorer in its current form.

Beijing Spec Explorer Team

Redmond Spec Explorer Team

image

image

Spec Explorer is being extensively used to test several Microsoft technologies and has been successfully applied to testing thousands of pages of Windows open protocol specifications, a huge project that took more than 250 person years.

Today we are super proud to ship Spec Explorer 2010 for the first time outside Microsoft through MSDN DevLabs!

We'll use this blog to post technical articles and share samples with our user community. We hope you download Spec Explorer, try it out, and let us know what you think on the project forum.

Thanks in advance on behalf of the Spec Explorer team.