I cannot get specflow's code behind files to regenerate

前端 未结 3 1657
感情败类
感情败类 2021-02-20 13:52

When I edit a specflow feature file test, it doesn\'t update the code-behind file. When I try to manually regenerate the code-behind files by right-clicking th

相关标签:
3条回答
  • 2021-02-20 14:32

    In Visual studio, I chose: Tools > Options > Specflow. Then set Enable SpecFlowSingleFileGenerator Custom Tool to True.

    This is a legacy setting, however, and I want to try and find a way to use MSBuild.

    0 讨论(0)
  • 2021-02-20 14:34

    These are the steps I had to take to switch from using the old, 'specflowsinglefilegenerator', to generate my *.feature.cs files to having them autoupdate whenever I build the test project.

    The process is described on Specflow's website, but pictures help in understanding the process.

    1. Remove 'specflowsinglefilegenerator' custom tool reference from all of your *.feature files (Before...) (After...)
    2. Delete the current *.feature.cs files which correspond to your *.feature files
    3. Upgrade Specflow to 3.0.188 at least. the below is working for me. I am using NUnit for my test framework. NUnit3TestAdapter is needed for MS Test Explorer to recognize the tests. (The must haves in the below are: NUnit, NUnit3TestAdapter, Specflow, Selenium.Webdriver), Selenium.Support,
    4. Add the SpecFlow.Tools.MsBuild.Generation NuGet package to your project. This package is used to generate SpecFlow’s code-behind files.
    5. Add a specflow.json file to the project which contains your specflow feature files (*.feature)
    6. Now try rebuilding your solution. On rebuild your *.feature.cs files should get auto-generated.
    0 讨论(0)
  • 2021-02-20 14:43

    I had the same issue . And when I upgraded my specflow to 3.0.213 , feature.cs and tests were not generated. Then I used this MSBUild example with latest specflow to generate feature.cs and tests in test explorer. It uses MSTest as test runner.

    0 讨论(0)
提交回复
热议问题