如何使用Visual Studio 2013 Professional分析单个单元测试的性能?

GaT*_*mas 22 profiling automated-tests unit-testing visual-studio-2013

我想运行Visual Studio 2013专业版分析器进行单个自动化测试.关于如何使用专业版,这里的其他问题尚不清楚.

这是可能的,如果是的话,怎么样?

GaT*_*mas 30

好的,所以我想出了如何为剖析器采样(而不是仪器)做...

  1. 启动Visual Studio(VS)并打开具有您要分析的自动化测试的项目.
  2. 在将要分析的测试的第一行上放置一个断点.
  3. 调试测试.
  4. 启动VS的第二个实例.
  5. 打开Performance Explorer(根据您的VS2013版本,这将在Tools-> Analyze-> Windows-> Performance Explorer或Analyze-> Windows-> Performance Explorer中).
  6. 在Performance Explorer中,单击Actions-> Attach并附加到vstest.executionengine.*.
  7. 返回第一个VS实例(当前处于断点处)并运行测试以完成.
  8. 回到第二个VS实例.探查器将检测单元测试过程已退出并完成其分析.

可以改进的一件事是使用仪器进行此操作,但目前我还不清楚如何在VS Professional版本中完成.

  • @GraehamF如果你有Visual Studio 2015 Enterprise,你可以在Test Explorer窗口中右键单击一个测试,在那里你会找到一个"Profile Test"选项. (3认同)
  • 谢谢!此过程也适用于VS 2012 Professional.知道你必须连接到名为vstest的进程...是关键.但是,我还没有弄清楚如何使用单元测试进行检测分析. (2认同)
  • 在Visual Studio 2015社区中,您需要选择的是[TE.ProcessHost.Managed](http://i.stack.imgur.com/1Wko1.png).不幸的是,似乎有两个,所以你必须选择CPU使用率更高的那个.(见图.) (2认同)
  • 对于 VS 2017,它似乎是进程“testhost.x86.exe” (2认同)

Mar*_*lug 12

要在单元测试上运行性能分析,我只需创建一个控制台应用程序,我将其称为单元测试方法,然后将其用作性能分析的目标项目.这可能比启动VS和附加的两个实例更容易.

  • 现在看来很简单,你这么说。 (2认同)