SpecFlow+ LivingDoc New Version and Action Required to Use it

SpecFlow+ LivingDoc has been updated and is now available on the Visual Studio marketplace.

The new version of LivingDoc contains the following new features and bug fixes:

  • Show builds for other branches than master (dropdown menu to select branch)
  • Store the selected build definition/branch per user (instead of per project as we formerly did it)
  • If there is no successful build on the selected definition/branch yet, we show a message
  • “Queue build” button is using the selected branch, latest commit and current build definition version

Furthermore in the next hours every collection administrator will receive an e-mail with a notification. Because of the changes in this update, LivingDoc needs additional permissions to access your project/repository.

Your notification will look similar to this one.

Without taking actions and giving the required permission to LivingDoc, you won’t be able to use the new features!

SpecFlow+ LivingDoc 0.2.2 Released

SpecFlow+ LivingDoc 0.2.2 has been released and is available on the Visual Studio marketplace. This version includes a number of QOL improvements for managing builds:

New features

  • You can now select a project language in the build task itself. The previous fallback was to use English as the language of the feature files. This would cause problems in projects using other languages, if only the folder containing the repository was selected as the source, meaning the language settings in the app.config file were ignored.
  • The build selector is now more streamlined, making it easier to locate the desired build:
    • Builds are sorted alphabetically
    • Only those builds that contain the LivingDoc step are displayed (TFS 2018 and VSTS only!)

Bug Fixes

  • Fixed “The attribute “Update” in element None/Compile is unrecognized” errors
  • Fixed “Not all required parameter are set” when the project path parameter ends with “\”
  • Fixed “System.NullReferenceException” when the project contains empty feature files
  • Fixed issue where Scenario Outline parameters in Table headers are not replaced

End of Visual Studio 2013 Support Imminent

We will remove support for Visual Studio 2013 with the upcoming release of SpecFlow 3 (due to be released soon). Downloads for the Visual Studio extension account for only a fraction of 1% of all downloads (a ratio of roughly 400:1), so we want to invest our time and resources elsewhere. For this reason, we will no longer support Visual Studio 2013 with SpecFlow 3, meaning there will be no more updates of the VS 2013 integration.

If you are still using Visual Studio 2013 and will want to upgrade to SpecFlow 3, we suggest that you start mapping out your upgrade path so you are prepared for the new release in time.

SpecFlow+ Runner 1.8 Released

SpecFlow+ Runner 1.8 has been released and is available for download from NuGet. The main changes in this version are:

  • Support for SpecFlow 2.4
  • Change to the behaviour of the test adapter for compatibility with Visual Studio 15.8

This version also includes a number of smaller bug fixes.

SpecFlow 2.4 Released

SpecFlow 2.4 has been released and is now available for download from NuGet. This is likely to be the last release of SpecFlow before we release SpecFlow 3.

SpecFlow 2.4 includes a number of new features:

  • Added ability to convert type to same type or one of the base types #1110
  • Added support for customization of dependency injection at feature level via a runtime plugin event to raise feature dependencies #1141
  • Allow marking steps as Obsolete and have a configurable behavior for it #1140
  • IGherkinParser and IGherkinParserFactory interfaces added to support Gherkin Parser pluggability #1143
  • Assist: remove accents from column headers and property names when comparing objects to a table #1096
  • Added NUnit current TestContext scenario container registration. See #936
  • Array & List support for strings and enums when instantiating class from Specflow table #1018
  • MSBuild: Experimental support for deleting code-behind files on clean and rebuild when MSBuild #1167, #1208
  • MSBuild: Experimental support for Net.SDK project system, only for targeting desktop framework, .net core is supported and won’t work #1223
  • Changed Parameter handling of specflow.exe #1112

There are also a number of bug fixes. The full list of changes can be found here.

 

Don’t forget to regenerate your features and restart Visual Studio after upgrading!

 

SpecFlow and PackageReference

By default, the packages used in SpecFlow projects are stored in packages.config. However the new Visual Studio projects instead use the PackageReference element to reference packages. When using the PackageReference element, generator plugins will not be found, and you will see errors similar to the following:

Unable to find plugin in the plugin search path: SpecRun. Please check http://go.specflow.org/doc-plugins for details.
#error TechTalk.SpecFlow.Generator

This is due to SpecFlow not searching for the package in the correct location. To ensure that the plugin is found, you need to specify the path explicitly in your app.config file.

To do so, enter the path to the appropriate path in the plugins element of your app.config file in this case, e.g.:

<plugins>
      <add name="SpecRun" path="%USERPROFILE%\.nuget\packages\specrun.specflow.2-3-0\1.7.0\lib\net45" />
</plugins>

IMPORTANT! You will need to manually update this path when upgrading to a newer version of the package, as the path contains the version number (e.g. “1.7.0” in the above example).

You can find a sample project using the new project format here. The relevant line in the app.config file is here.

Note: This requires SpecFlow 2.3.2 of higher. This step should not be necessary once SpecFlow 3 is released.

SpecFlow+ Runner and Excel 1.7 Released

SpecFlow+ 1.7 Runner

SpecFlow+ 1.7 Runner has been released. This version includes support for SpecFlow 2.3, as well as the following changes:

Fixes

  • runtests.cmd: uses msbuild.exe from path and not from %windir%\Microsoft.NET\Framework\v4.0.30319
  • Log entries are no longer written to the report file if you define the name of the report in your .runsettings file
  • VisualStudio.srProfile is used if it exists and the test run is started from within VisualStudio

 

SpecFlow+ 1.7 Excel

SpecFlow+ 1.7 Excel has been released. This version includes support for SpecFlow 2.2.1 and SpecFlow 2.3, as well as the following changes:

  • Use SpecFlow.Tools.MsBuild.Generation for SpecFlow 2.3 out of the box

SpecFlow 2.3 Released

SpecFlow 2.3 has been released with the following changes:

New features

Fixes

API Changes

Miscellaneous

A new NuGet package, “SpecFlow.Tools.MsBuild.Generation”, is available to easily enable the code-behind generation when building your project. The documentation will be updated soon.

SpecFlow+ Runner and Visual Studio 2017 15.6

Visual Studio 2017 15.5 Preview 2 introduced a new real time test discovery feature. This feature is live with 15.6.

When using VS 2017 15.6 with SpecFlow+ Runner, the Test Explorer will not display any tests in VS unless you enable Additionally discover tests from built assemblies after builds under Tools | Options | Test:

We are looking into how we can support real time test discovery with SpecFlow+ Runner. Until then, please make sure you enable this option in VS if you are using SpecFlow+ Runner with Visual Studio 2017 15.6.