对于上述问题,我有一个后续问题。我正在使用带有本机 mstest 支持的 resharper 4.5 版来运行 mstest 单元测试。当我将 resharper 的单元测试选项配置为使用我的 testrunconfig(以利用我的部署项集)时,我的测试运行结束,没有显示任何结果或错误。有没有人使用 resharper 的 mstest 跑步者有同样的问题或类似的事情?
4 回答
事实证明,resharper 的 mstest 运行器不适用于启用了代码覆盖的 testrunconfig 文件。我通过在我的测试运行配置文件中禁用代码覆盖来解决这个问题。
我也遇到了这个问题。但是,我不想禁用代码覆盖,因为我经常使用它。构建服务器也使用它。所以我想要一个解决方案,让我大部分时间都使用 R# 的运行器以方便起见,但仍然允许我使用 Visual Studio 的 MSTest 运行器运行我的测试,以便在我想要的任何时候获得代码覆盖率,并允许构建服务器继续生成代码覆盖率统计信息。
解决方法
我创建了一个名为 Resharper.testsettings 的附加测试设置文件。它与我的普通 Local.testsettings 文件完全相同,只是它禁用了代码覆盖率。然后我告诉 R# 使用这个特定的测试运行配置。
- 打开你的 Visual Studio 项目
- 选择测试->编辑测试设置->本地(local.testsettings)(或您通常使用的任何测试设置)
- 点击“另存为... ”
- 将文件命名为 ReSharper.testsettings
- 在Test Settings 窗口的General选项卡的Name字段中,将名称更改为 ReSharper
- 单击数据和诊断
- 取消选中代码覆盖率旁边的框
- 转到ReSharper-> 工具-> 单元测试
- 选择MSTest单元测试提供程序
- 选择“使用此测试运行配置:”
- 选择ReSharper
- 点击确定
如果在第 8 步中使用 R# 5.0,则会有一个额外的菜单深度:
- 转到Resharper-> 选项-> 工具-> 单元测试
您不需要 resharper 来支持独立的 mstest 安装。我在这里的帖子中解释了如何在没有 VS 的情况下进行独立的 mstest 安装 - http://www.shunra.com/shunrablog/index.php/2009/04/running-mstest-without-visual-studio
有类似的问题。我的 MSTest 测试使用 Visual Studio 测试运行程序而不是 R# 的运行程序运行。抛出的异常直接归因于 R# 测试运行没有找到必须部署的文件(并且在 testrunconfig 中指定)。
尝试让它选择配置的文件并指定文件。没有骰子。
不知道如何在 testrunconfig 文件中“禁用代码覆盖”,而不是不指定任何内容(我没有)。
问过R#。现在询问 StackOverflow 的观众。