In recent years, the friction of creating scenarios in BDD, and in using those scenarios to author tests, has been reduced greatly. Developers now have tools that enable specifications to be written using a structured, English syntax, and to use those specifications as the tests that prove out the code. These domain-specific languages now enable us to create executable specifications first in the process, followed by building out only that functionality which meets the specification, resulting in fewer, more value-focused tests. This presentation will introduce Gherkin, SpecFlow and WatiN, and provide examples of how these three tools can be used to create BDD-style in ASP.NET MVC applications. Gherkin and SpecFlow provide the framework for writing and executing specifications within Visual Studio, while WatiN allows us to write tests that drive a web browser automatically, giving us automated, end-to-end testing of the public features system.
Recorded live via Live Meeting as part of mvcConf 2