无法从Visual Studio 2012 Ultimate Edition运行SpecFlow方案

Nag*_*dra 13 specflow visual-studio-2012

我安装了Visual Studio 2012 Ultimate Edition并配置了SpecFlow.我使用以下配置在config.xml文件中运行测试:

<specFlow>
<unitTestProvider name="MsTest" /> 
</specFlow>
Run Code Online (Sandbox Code Playgroud)

我能够创建睾丸并正确编译.但是当我尝试使用选项"运行SpecFlow场景"或"调试SpecFlow场景"从上下文菜单运行场景时,我无法看到任何操作.它只是说"构建成功",之后没有其他事情发生.

有人可以解释是否有其他方式执行方案?

提前致谢.

小智 19

我已经拥有了所有这些配置集,但我仍然无法从上下文菜单中运行场景.

在我查看SpecFlow选项(工具>选项> SpecFlow)并将" VisualStudio2012 " 设置为Test Runner Tool(在Test Execution下)之前.

出于某种原因,它被设置在"VisualStudio2010MsTest"上,然后场景没有从上下文菜单运行.

  • 谢谢,在VS2013中,工具设置为自动..当我尝试运行测试时没有发生任何事情.设置为ReSharper解决了我的问题! (5认同)

Voi*_*Ray 7

你的app.config文件应该是:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="specFlow" type="TechTalk.SpecFlow.Configuration.ConfigurationSectionHandler, TechTalk.SpecFlow" />
  </configSections>
  <specFlow>
    <unitTestProvider name="MsTest" />
  </specFlow>
</configuration>
Run Code Online (Sandbox Code Playgroud)

这是SpecFlow wiki 的链接.

然后重新构建您的解决方案,您应该能够查看并运行测试.您可以从Test/Windows/Test Explorer中查看和运行测试.

还要确保您引用了测试项目中的Microsoft.VisualStudio.QualityTools.UnitTestFramework.以下是步骤:

  1. 创建新项目:在我的案例中MVC 4
  2. 在解决方案中添加"单元测试项目"
  3. 将SpecFlow nuget包添加到"单元测试项目"
  4. 添加一个随机SpecFlow功能/测试5)运行测试以确保它工作