understanding specflow support for different test framework



Specflow is a BDD testing framework. It can be confusing to work with it. There are some key component that you need to be aware off.

1. SpecRun.Runner - that is used in many of their tutorials and it needs a LICENSE if you need to use it in production. You probably going to be calling "specrun.exe". Setup is really easy as it is well documented in their tutorials.

2. Specflow.MsTest - this is the tool that you use specflow together with mstest. This is the link where you can grab your nuget package. It is just a simple "Install-Package SpecFlow.MsTest".

Last step in this process is you need to edit App.config to configure code generation for Microsoft.



When you SAVE your file, you will be prompted to RE-GENERATE your features. If you have existing test say in specflow runner, it will be over-written and replaced. Your specflow is ms test ready.

Run unit test as you normally would in visual studio.


3. Specflow NUnit - Specflow offers support for nunit as well. You need to install the package

Install-Package SpecFlow.NUnit
Install-Package SpecFlow.NUnit.Runners

Yeap, you need a runner, otherwise you probably won't be able to run anything.

Great, now you're ready to update your app.config changes.





When you SAVE your file, you will be prompted to RE-GENERATE your features. click "yes" and let magic happens. If you have existing test say in specflow runner, it will be over-written and replaced. Your specflow is ms test ready.

Conclusion.

If you don't want to get a license, use option 2 and 3 above. Conversion is pretty straight forward.

















Comments

Popular posts from this blog

The specified initialization vector (IV) does not match the block size for this algorithm