在使用具有此配置的SpecFlow的项目中:
<unitTestProvider name="MsTest.2010" />
仅使用默认的Visual Studio设置时,测试正常。
安装ReSharper后,上下文菜单命令“Run SpecFlow Scenarios”和“Debug SpecFlow Scenarios”停止工作;选中后,没有任何反应。
这似乎是因为ReSharper将其自己的测试运行器设置为默认值。解决方法是打开选项对话框(工具|选项| SpecFlow |默认),在“测试执行”部分中,将“测试运行器工具”显式设置为“MsTest”。
不幸的是,在设置新的开发机器时,有时我们忘记设置这个并且安装ReSharper后测试停止工作,有人必须记住这是解决方法。
问题是:是否可以在配置文件中设置“Test Runner Tool”选项,使其保留在项目中,而不是在用户设置中?这是unitTestProvider设置的runtimeProvider属性用于什么?
答案 0 :(得分:2)
我知道你问过VS2010,但考虑到你的问题的年龄,我想我会在VS2012中尝试一下。我能够让SpecFlow与MSTest一起使用而不改变Tools \ Options \ SpecFlow \ Test Runner Tool设置(即将其保留为“Auto”):
此时测试应该正常运行