We have just released SpecFlow v1.7 over the weekend. In this release there are extended integration options for the Silverlight async testing framework and also for SharpDevelop 4.
In addition to that, we have tried to make the upgrade process easier for the SpecFlow users, especially if they work in bigger teams or on different projects in parallel.
The decision to upgrade a tool for a project is usually made carefully. You have to consider your close deadlines, check the breaking changes, and discuss it with the team.
If you work on multiple projects in parallel (e.g. you have to support and older project too), it can be quite hard to synchronize that all projects upgrade at the same time.
As SpecFlow is (was) a single msi installer and the different versions cannot be easily installed side-by-side, the upgrade process was sometimes challenging.
From v1.7 we have managed to have better separation of the components that are directly used by the project (the generator and the runtime) and the IDE integration. With this, you can upgrade SpecFlow on your machine and defer the upgrade for the individual projects.
For that to work, please ensure that your project is using SpecFlow 1.6 or later and it is setup as one of the following (see further advanced options in the documentation):
- SpecFlow is configured in the project as a NuGet package (this is the easiest and the recommended option).
- SpecFlow assemblies (not only TechTalk.SpecFlow.dll, but (almost) all the assemblies from the SpecFlow installation folder) are copied into your project folder structure and the reference for the TechTalk.SpecFlow.dll is taken from this folder. See the detailed list of required assemblies in this documentation page (last section).
If you have this setup, you can safely install a newer SpecFlow version on your machine. The projects will still use the configured generator and runtime.
When you feel confortable to upgrade SpecFlow on your project as well, you can do that project-by-project (the easiest it to use NuGet upgrade).
Note 1: Please make sure that the SpecFlow version on the machine is the same or newer than the SpecFlow version used by the projects.
Note 2: This feature works currently with Visual Studio 2010 only.
SpecFlow is and open-source project sponsored by TechTalk. You can also support the project by contributing on github or by “adopting a feature” ;-). TechTalk also provides commercial support for SpecFlow.
Learn SpecFlow at the the Progressive .NET Tutorials: http://skillsmatter.com/event/open-source-dot-net/progressive-dot-net-tutorials-2011
3 thoughts on “Enhanced upgrading options in SpecFlow v1.7”