SpecsFor 8.0.0-rc1b
See the version list below for details.
dotnet add package SpecsFor --version 8.0.0-rc1b
NuGet\Install-Package SpecsFor -Version 8.0.0-rc1b
<PackageReference Include="SpecsFor" Version="8.0.0-rc1b" />
<PackageVersion Include="SpecsFor" Version="8.0.0-rc1b" />
<PackageReference Include="SpecsFor" />
paket add SpecsFor --version 8.0.0-rc1b
#r "nuget: SpecsFor, 8.0.0-rc1b"
#:package SpecsFor@8.0.0-rc1b
#addin nuget:?package=SpecsFor&version=8.0.0-rc1b&prerelease
#tool nuget:?package=SpecsFor&version=8.0.0-rc1b&prerelease
Project Description
SpecsFor is another Behavior-Driven Development framework that focuses on ease of use for developers by minimizing testing friction.
Main Features
SpecsFor is a Behavior-Driven Development style framework that puts developer productivity ahead of all other goals. The current release features:
- AutoMocking - Easily configure and verify behavior.
- ReSharper Live Templates - Quickly create specs with only a few keystrokes.
- Clean Separation of Test State - Encapsulate test setup and reuse it across as many specs as you like. Run The Same Specs Multiple Times With Different Contexts - SpecsFor allows you to assert the same things are true given any number of contexts.
- Mix And Match Contexts - Context can be combined and extended to support complex test setup without code duplication or excess noise in your specs.
- Declarative Context - Context can be established in many ways, including by simply marking your spec class with a special attribute.
- Works With Any NUnit Test Runner - No add-ins are needed, SpecsFor is fully compatible with all popular test runners including TestDriven.NET, Resharper, and TeamCity.
Examples
[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());
}
}
SpecsFor In Action
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
Learn more about Target Frameworks and .NET Standard.
-
- SpecsFor.StructureMap (>= 8.0.0-rc1b)
NuGet packages (1)
Showing the top 1 NuGet packages that depend on SpecsFor:
Package | Downloads |
---|---|
SpecsFor.Helpers.Web
Would you like to write simple and clean specs around your ASP.NET MVC controllers, filters, and helpers? All you need is SpecsFor and this package! |
GitHub repositories (2)
Showing the top 2 popular GitHub repositories that depend on SpecsFor:
Repository | Stars |
---|---|
MattHoneycutt/SpecsFor
SpecsFor is a light-weight Behavior-Driven Development framework that focuses on ease of use for *developers* by minimizing testing friction.
|
|
nhibernate/NHibernate.AspNet.Identity
ASP.NET Identity Provider for NHibernate
|
Version | Downloads | Last Updated |
---|---|---|
8.0.0-rc2a | 156 | 8/21/2025 |
8.0.0-rc1b | 167 | 7/8/2025 |
8.0.0-rc1a | 160 | 6/30/2025 |
8.0.0-rc1 | 208 | 4/11/2025 |
8.0.0-beta01 | 560 | 3/25/2025 |
7.1.0 | 76,432 | 5/25/2021 |
7.0.0 | 84,508 | 10/24/2018 |
7.0.0-rc2 | 2,346 | 9/18/2018 |
7.0.0-rc1 | 2,159 | 9/17/2018 |
7.0.0-beta1 | 2,082 | 9/7/2018 |
6.0.0 | 15,463 | 9/5/2018 |
6.0.0-alpha02 | 1,791 | 5/18/2018 |
5.0.1 | 60,574 | 2/23/2017 |
5.0.0 | 40,648 | 4/8/2016 |
4.5.0 | 6,068 | 3/17/2016 |
4.4.0 | 5,733 | 1/8/2016 |
4.3.2 | 10,482 | 7/24/2015 |
4.3.1 | 28,576 | 1/26/2015 |
4.3.0 | 2,443 | 1/11/2015 |
4.3.0-RC10 | 1,597 | 1/9/2015 |
4.3.0-RC09 | 1,886 | 12/3/2014 |
4.3.0-RC08 | 1,756 | 11/28/2014 |
4.3.0-RC07 | 1,750 | 11/28/2014 |
4.3.0-RC01 | 1,758 | 11/26/2014 |
4.2.0 | 3,796 | 10/18/2014 |
4.2.0-alpha03 | 1,673 | 10/15/2014 |
4.2.0-alpha02 | 1,675 | 10/15/2014 |
4.2.0-alpha01 | 1,586 | 10/15/2014 |
4.1.0 | 5,980 | 9/5/2014 |
4.1.0-rc08 | 1,722 | 9/5/2014 |
4.1.0-rc07 | 1,746 | 9/5/2014 |
4.1.0-rc06 | 1,704 | 8/15/2014 |
4.1.0-rc05 | 1,674 | 8/15/2014 |
4.1.0-rc04 | 1,687 | 8/15/2014 |
4.1.0-rc03 | 1,768 | 8/15/2014 |
4.1.0-rc02 | 1,721 | 7/29/2014 |
4.1.0-rc01 | 1,730 | 7/25/2014 |
4.0.2 | 7,663 | 6/27/2014 |
4.0.2-alpha1 | 2,121 | 6/16/2014 |
4.0.1 | 2,367 | 6/15/2014 |
4.0.0 | 2,249 | 6/13/2014 |
4.0.0-rc1 | 1,745 | 6/11/2014 |
3.1.1-test2 | 1,766 | 5/17/2014 |
3.1.1-test1 | 1,797 | 3/28/2014 |
3.1.0 | 6,551 | 1/8/2014 |
3.0.0 | 22,644 | 3/8/2013 |
3.0.0-RC3 | 1,761 | 3/8/2013 |
3.0.0-RC2 | 1,828 | 3/8/2013 |
3.0.0-RC1 | 1,769 | 2/26/2013 |
3.0.0-preview2 | 1,868 | 1/8/2013 |
3.0.0-preview1 | 1,828 | 1/8/2013 |
2.7.0 | 3,945 | 9/16/2012 |
2.7.0-Preview1 | 1,870 | 9/15/2012 |
2.6.0 | 4,371 | 4/7/2012 |
2.6.0-alpha | 1,882 | 4/7/2012 |
2.5.0 | 2,787 | 1/20/2012 |
2.4.0 | 2,423 | 1/3/2012 |
2.3.2 | 2,472 | 12/16/2011 |
2.3.1 | 2,345 | 12/14/2011 |
2.3.0 | 2,317 | 12/14/2011 |
2.2.0 | 2,404 | 12/5/2011 |
2.1.0 | 2,357 | 11/27/2011 |
2.0.1 | 2,445 | 11/22/2011 |
2.0.0 | 2,409 | 11/18/2011 |
1.1.7 | 2,592 | 7/20/2011 |
1.1.6 | 2,514 | 6/24/2011 |
1.1.1 | 2,438 | 6/9/2011 |
1.0.66793 | 2,497 | 5/12/2011 |
1.0.66485 | 2,576 | 5/7/2011 |
1.0.65144 | 2,630 | 4/6/2011 |
1.0.0 | 3,147 | 2/26/2011 |
See updates for SpecsFor.StructureMap for details.