Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to profile unit tests in Visual Studio 2012?

Is it possible to profile MSTest unit tests in Visual Studio 2012 Ultimate without using any external profiling tools?

like image 981
alexey Avatar asked Aug 19 '12 16:08

alexey


2 Answers

This feature was added back in the upcoming Visual Studio 2012 Quarterly Update 1. Right-click the test you want to profile in the Test Explorer and select "Profile Test" from the context menu.

like image 103
Oleg Sych Avatar answered Oct 06 '22 19:10

Oleg Sych


In Visual Studio it was a really powerful feature ! As you, I can not find it in VS2012 (no references in MSDN or in blogs, ...)

Now, the only solution I have found for profiling Unit Test is to Attach the Profiler to a Process called vstest.executionengine.x86.exe (x86 for me but this could be different for 64 bits)

You can do this in the Tab "Performance Explorer" after a right click.

enter image description here

Once the profiler is starting, you can run as many tests as you want. Then stop profiling and you will see all details of this session.

There are 2 caveats with this technique :

  • for some reasons, the process is missing in the list. Maybe it stops when idle. Start just one test te see it.
  • You have to Attach the Profiler for every sessions. I don't find yet a way to script it.

Hope this will help you.

like image 42
Cybermaxs Avatar answered Oct 06 '22 19:10

Cybermaxs