DillPickle

Update 19th of December 2012: I’m not sure that I’d advise anyone to use DillPickle :) not now that I’ve tried SpecFlow which is very cool, integrates well with Visual Studio and your build server, etc…

Introduction

DillPickle is a slim Gherkin-compliant BDD story runner for .NET.

It has borrowed (stolen?) most of its functionality from NBehave, but has some hooks I needed and some more nifty stuff.

Source code and stuff is on Github, including the “official” documentation wiki.

What?

You can write high level, understandable-by-business-people, understandable-and-easily-writable-by-developers executable specifications in Gherkin and have DillPickle run them… check this out:

Feature: User login
    As a user
    I want to be able to sign in to my account
    So that I can use the site as myself
 
    Scenario: Successful login
        Given I am visiting the front page
            and the following accounts exist:
                | username   | password   |
                | mookid8000 | secret!    |
        When I type "mookid8000" in textbox username
            and I type "secret!" in textbox password
            and I click "Sign in"
        Then I am redirected to my home page
            and a notification reads "Welcome mookid8000" 
 
    Scenario outline: Failed login
        Given I am visiting the front page
            and the following accounts exist:
                | username   | password   |
                | mookid8000 | secret!    |
        When I type "<username>" in textbox username
            and I type "<password>" in textbox password
            and I click "Sign in"
        Then I am redirected to the front page
            and a notification reads "Wrong username and/or password" 
 
        Examples:
            | username      | password      |
            | mookid8000    | wrongPassword |
            | wrongUsername | doesntMatter  |

- and all this stuff can be executed and verified by DillPickle! Nifty, huh?!