Getting Started
SpecExplorer has is a free pre/post style MBT tool developed by Microsoft Research. Although in principle you can design models in any .Net language, most of the examples you'll encounter are written in C#, so if you don't know it already, get ready to learn a bit of it. In addition to the models there is a separate language, Spec#, which is used for combining and filtering the models to generate other models and testcases.
In principle SpecExplorer is free and can be downloaded from Microsoft Research but it requires MS Visual Studio Pro. With the price of Visual Studio (Between $600 and $800) it's still significantly less expensive than any other commercial offering that's currently available. While it doesn't have all the goodies that some of the commercial programs have, it's more powerful than any of the free offerings that I've found to date.
Example Code
- Basic LightSwitch - A basic model to demonstrate SpecExplorer's functionality.
Resources
Downloads
- SpecExplorer
- UML Extension for SpecExplorer - This looks interesting, but requires Visual Studio Ultimate and an older version of SpecExplorer than what is current.
Videos
- Spec Explorer Basics 1: Exploring a Model and Generating Tests - This gives a bare bones introduction to the tool itself, this is a good start to see what it looks like.
- Spec Explorer Basics 2: Understanding Cord Scripts - This is a great introduction to Cord scripts, a good suppliment to "Effective Model Based Testing with Spec Explorer"
- Effective Model Based Testing with SpecExplorer - This tutorial was given by two members of the SpecExplorer team and gives coverage of all the basics.
Other Resources
- Online Documentation - If you're going to do any serious work in SpecExplorer, this is an invaluable resource.
- FAQ
- SpecExplorer Team Blog
- Applied Model Based Testing - Experiences & Examples - Simon Ejsing's blog where he has quite a few good examples using Spec Explorer. I haven't had the best luck getting them all to work, but he covers the concepts well.