As at the time of writing (September 2016), the SpecFlow for Visual Studio 2015
extension does not play well with .NET Core projects.
Wait for the VS extension to support .NET Core projects. In the meantime, I present...
Update your project:
-
Include SpecFlow and your test framework of choice:
-
<ItemGroup> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" /> <PackageReference Include="SpecFlow" Version="2.1.0" /> <PackageReference Include="xunit.runner.visualstudio" Version="2.2.0" /> <PackageReference Include="xunit" Version="2.2.0" /> </ItemGroup>
-
NUnit (Experimental):
<ItemGroup> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" /> <PackageReference Include="SpecFlow" Version="2.1.0" /> <PackageReference Include="NUnit" Version="3.8.1" /> <PackageReference Include="dotnet-test-nunit" Version="3.4.0-beta-2" /> </ItemGroup>
-
MsTest (Experimental):
<ItemGroup> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="15.3.0" /> <PackageReference Include="SpecFlow" Version="2.1.0" /> <PackageReference Include="MSTest.TestAdapter" Version="1.1.18" /> <PackageReference Include="MSTest.TestFramework" Version="1.1.18" /> </ItemGroup>
-
-
Include
SpecFlow.NetCore
:<ItemGroup> <DotNetCliToolReference Include="SpecFlow.NetCore" Version="1.0.0" /> </ItemGroup>
-
Add a
precompile
script:<Target Name="PrecompileScript" BeforeTargets="BeforeBuild"> <Exec Command="dotnet SpecFlow.NetCore" /> </Target>
-
Build for your tests to be discovered.
- There is a bug with the .NET Core CLI requiring a second build for newly added files to be discovered.
- Support for the .NET Core switch from
project.json
to MSBuild.csproj
was added by the community in February 2017 (thanks @richardjharding!) but has not yet been officially tested.
If you build the samples solution, you should see .feature.cs
files and an app.config
being generated for each test framework.
(see #39)netcoreapp2.0
net46
net461
SpecFlow itself, and by extension this project, is currently limited to running on full .NET Framework.
- xUnit
- NUnit - Experimental support added by the community.
- MsTest - Experimental support added by the community.
- SpecFlow Issue 471: Auto generation of
feature.cs
fails when using MSBuild that comes with VS2015 - SpecFlow Issue 457: SpecFlow "Generate Step Definition" context menu missing in VS2015
- SpecFlow Google Group discussing VS2015 & DNX