SpecFlow aims at bridging the communication gap between domain experts and developers by binding business readable behavior specifications and examples to the underlying implementation.
Our mission is to provide a pragmatic and frictionless approach to Specification-By-Example for .NET projects.
SpecFlow also supports the concepts of Acceptance Test Driven Development (ATDD) and Behavior Driven Development (BDD), which are often used synonymously with Specification-By-Example.
Install IDE Integration
The installation of the IDE Intergation packages depends on the IDE you use. For Visual Studio 2013, 2012 and 2010, the easiest way is to search for “SpecFlow” in the extension manager (Extensions and Updates in VS2013/VS2012) online search. For other IDE integrations and for the direct download links, check the Install IDE Integration page.
Setup SpecFlow Project
The SpecFlow tests are usually placed into one or more separate project in the solution: the “SpecFlow Projects”. The easiest and most convenient way to setup these projects is to use our NuGet package:
SpecFlow or one of the specific helper packages, like
SpecRun.SpecFlow. For a detailed project setup guide, check the Setup SpecFlow Projects page.
This section guides you through the first steps of setting up a SpecFlow project and creating the first scenario. In the example, we use SpecFlow with NUnit, but you can choose from many other test execution frameworks, including SpecFlow+Runner that provides specialized execution features, Visual Studio Test Window and Team Foundation Server (TFS) Build integration for SpecFlow.
Have your first SpecFlow test running in just a few steps:
Create a class library project: MyProject.Specs
if you want to use SpecFlow with MsTest in VS2010, you should start with a “Unit Test Project”
Add SpecFlow for NUnit through NuGet
PM> Install-Package SpecFlow.NUnit
Add your first feature file
we write yet-another StackOverflow clone now: SpecOverflow
Describe the first scenario of your application
Generate step definition skeletons
Cool new feature in v1.9!
Run your test – it is not green yet
use your favorite test runner, like the VS2012 test runner below; but it works well with ReSharper too…
Implement automation & application logic until the test is green
Celebrate the good work and continue with the next scenario!
Want to learn more?
- SpecFlow was inspired by Cucumber and is using Gherkin
- Recommended books:
Specification by Example by Gojko Adzic,
The Cucumber Book by Matt Wynne and Aslak Hellesoy
- Other books, articles, tutorials and screencasts on the Read & Watch page
Explore the SpecFlow eco-system
Check out the products that make SpecFlow even more powerful