SpecsFor is another Behavior-Driven Development framework that focuses on ease of use for developers by minimizing testing friction.
SpecsFor is a Behavior-Driven Development style framework that puts developer productivity ahead of all other goals. The current release features:
[Given(typeof(TheCarIsNotRunning), typeof(TheCarIsParked))]
[Given(typeof(TheCarIsNotRunning))]
public class when_the_key_is_turned : SpecsFor<Car>
{
public when_the_key_is_turned(Type[] context) : base(context){}
protected override void When()
{
SUT.TurnKey();
}
[Test]
public void then_it_starts_the_engine()
{
GetMockFor<IEngine>()
.Verify(e => e.Start());
}
}
public class when_the_key_is_turned_alternate_style : SpecsFor<Car>
{
protected override void Given()
{
Given<TheCarIsNotRunning>();
Given<TheCarIsParked>();
base.Given();
}
protected override void When()
{
SUT.TurnKey();
}
[Test]
public void then_it_starts_the_engine()
{
GetMockFor<IEngine>()
.Verify(e => e.Start());
}
}
Check out the docs at http://specsfor.readme.io
Check out the current version in action: http://www.youtube.com/watch?v=MVwguBsR6eA
See an earlier prototype of SpecsFor in action: http://www.youtube.com/view_play_list?p=982492E9FAE3F64A
Read more about SpecsFor at http://trycatchfail.com/blog