1

我正在尝试使用 dotTrace 4.0 分析单个单元测试(测试本身通过)。似乎 dotTrace 分析了 Resharper 的测试运行器,而不是分析测试本身。

我可以从 JetBrains 开发团队找到关于 dotTrace 3.1 的这个问题的答案:似乎 MSTest 创建了一个用于运行测试的新进程,而 dotTrace 3.1 的一个已知限制是它无法处理这种行为。

可以使用命令行中的 /noisolation 选项来禁止 MSTest 的这种行为,但不能从 IDE 中完成。

这个页面在这里: http ://confluence.jetbrains.net/display/NetProf/Profiling+Unit+tests+with+dotTrace+4.0 还告诉我,使用 dotTrace 4.0 和 ReSharper 5.0,它应该可以开箱即用。

它没有。

因此,我尝试从 dotTrace 的独立 UI 运行测试,如上面链接中所述,它确实可以解决问题,但有局限性:

  • 所描述的方法在指定的 dll 中运行所有测试。用于启动测试的参数可能会调整为运行一个特定的测试,但只运行一个微型 UT 似乎很麻烦。
  • 似乎我所有的源代码都没有附加到会话中,这需要更多时间来纠正。

我经历了 VS 选项、ReSharper 选项、.testrunco​​nfig 选项,但没有任何运气。以前有人解决过这个问题吗?

4

2 回答 2

4

实际上,ReSharper 中有一个我没有看到的选项:ReSharper > 选项 > 工具 > 单元测试 > MSTest > 使用此测试运行配置当我将其设置为默认值时,它运行得很好。

毕竟我的测试配置出了点问题。我不知道出了什么问题,因为与默认值的唯一区别是我启用了部署,其中包含一些用于我现在不使用的测试项目的 XML 文件。而且我也不明白这与我的问题有什么关系。

无论如何,因为它是这样工作的......

于 2010-11-15T12:30:01.083 回答
0

这可能是由 Visual Studio 附带的内置代码覆盖率引起的。请确保它已为您的解决方案关闭。

WBR,Oleg Stepanov JetBrains sro “愉快地发展!”

于 2010-11-15T13:44:28.423 回答