Как профилировать производительность для одного unit test с помощью Visual Studio 2013 Professional?
Я хотел бы запустить профилировщик Visual Studio 2013 Professional для одного автоматизированного теста. Из других вопросов здесь неясно, как это сделать с помощью Professional edition.
Возможно ли это, и если да, то как?
Ответ 1
Хорошо, поэтому я выяснил, как это сделать для пробоотборника (не инструментария)...
Запустите Visual Studio (VS) и откройте проект, у которого есть автоматический тест, который вы хотите профилировать.
Поместите контрольную точку в первую строку теста, которая будет профилирована.
Отладить тест.
Запустите второй экземпляр VS.
Откройте Performance Explorer (в зависимости от вашей версии VS2013 это будет либо в Tools- > Analyze- > Windows- > Performance Explorer, либо Analyze- > Windows- > Performance Explorer).
В Проводнике производительности нажмите Действия- > Прикрепить и присоединить к vstest.executionengine. *.
Вернитесь к первому экземпляру VS (в настоящее время в точке останова) и запустите тест для завершения.
Вернитесь ко второму экземпляру VS. Профайлер обнаружит, что процесс unit test завершил и завершил его профилирование.
Одна вещь, которая может быть улучшена, - это сделать это с помощью инструментария, но мне пока не ясно, как это можно сделать в версии VS Professional.
Ответ 2
Чтобы выполнить анализ производительности на unit test, я просто создаю консольное приложение, из которого я вызываю метод unit test, а затем использую его как целевой проект для анализа производительности. Это, вероятно, проще, чем запуск двух экземпляров VS и прикрепление.