VS2013 + TFS: принудительно отключить IntelliTrace?

Мы используем Visual Studio 2013 на наших машинах разработки и агенте сборки TFS. IntelliSense не должен быть доступен в версии, которую мы используем (Premium), но в агенте сборки он все равно каким-то образом работает с MSTest (подтверждено тем, что IntelliTrace.exe наблюдается как дочерний процесс vstest.executionengine.exe и пишет большое количество файлов *.iTrace в C:\Windows\Temp). Это одновременно занимает место на диске и значительно замедляет выполнение тестов, делая их искусственно привязанными к диску.

Проблема в том, что не существует способа предотвратить запуск IntelliTrace; эта версия VS2013 не показывает его в списке Инструменты-> Параметры, поэтому мы не можем использовать подход на основе пользовательского интерфейса для его отключения. Наш пользовательский рабочий процесс передает /p:EnableIntelliTrace=false в качестве аргумента MSBuild, но безрезультатно.

Кто-нибудь знает, как мы можем отключить его другими способами, сохраняя при этом проход сборки и тестирования? (Реестр, переименование файлов и т.д.). Мы не предвидим, что когда-либо придется запускать IntelliTrace на рассматриваемых машинах.


person T2PS    schedule 12.04.2016    source источник
comment
Вы когда-нибудь придумывали решение для этого @T2PS?   -  person Dewi Rees    schedule 19.12.2016


Ответы (3)


Вы можете просто удалить /p:EnableIntelliTrace=true вместо /p:EnableIntelliTrace=false, чтобы отключить запуск IntelliTrace во время MSbuild.

Если это не влияет на ваш агент сборки. Кажется, это связано с VS вашего агента сборки. Попробуйте отключить настройки файла testsettings и повторите попытку. Подробные шаги вы можете найти по этой ссылке: Как отключить/отключить IntelliTrace на сервере TFS MsBuild?

Более того, должен быть вариант с IntelliTrace с VS2013. Ознакомьтесь с информацией в этом блоге IntelliTrace с использованием Visual Studio 2013 Preview
введите здесь описание изображения

person PatrickLu-MSFT    schedule 13.04.2016
comment
Этот раздел не отображается в списке параметров ни для одной из наших установок VS2013. Я просматриваю рабочий процесс сборки, но не могу найти ничего, что бы устанавливало EnableIntelliTrace=true. В нашем тестовом файле .runsettings IntelliTrace вообще не упоминается. - person T2PS; 15.04.2016
comment
Он хорошо работает с моим VS2015 после отключения IntelliTrace в параметрах. Вы можете попробовать обходной путь: обновить VS2013 до VS2015 и отключить опцию в VS. - person PatrickLu-MSFT; 29.04.2016

Начиная с VS 2012 IntelliTrace и другие данные colelcotrs настраиваются в файле конфигурации .testsettings. Если этот файл не указан явно, используется файл по умолчанию. Я не уверен, но мне кажется, что в вашем случае IntelliTrace включен в конфигурации по умолчанию. Мое предложение состоит в том, чтобы попробовать следующие шаги:

  1. Добавьте в решение файл .testsettings. Для этого щелкните правой кнопкой мыши решение в VS. Затем выберите Добавить -> Новый элемент... и найдите Настройки тестирования.
  2. В ваше решение будет добавлен новый файл конфигурации, и по умолчанию IntelliTrace должен быть отключен. Если дважды щелкнуть этот файл, появится новое окно с различными параметрами, чтобы вы могли проверить правильность конфигурации.
  3. Скажите MSTest использовать ваш собственный файл .testsettings. Это можно сделать с помощью параметра /testsettings.
person Michał Komorowski    schedule 27.04.2016
comment
Мы используем файл .runsettings, а не файл .testsettings, поскольку это было рекомендовано для VS2013. Похоже, что IntelliTrace нельзя настроить вне .testsettings, но MSDN добавляет предостережение о том, что его добавление замедлит выполнение теста; поскольку мы пытаемся улучшить производительность здесь, нам нужно попробовать это и выяснить. - person T2PS; 02.05.2016

Вы по-прежнему можете использовать .runsettings для отключения IntelliTrace (https://msdn.microsoft.com/en-us/library/jj635153.aspx?f=255&MSPPError=-2147217396). Это нигде не задокументировано. Просто скопируйте DataCollector для IntelliTrace из файла .testsettings и отключите все коллекции.

person Mao    schedule 08.05.2016
comment
На самом деле вы можете попробовать добавить файл .runsettings без какой-либо настройки для IntelliTrace. Интересно, работает ли IntelliTrace, хотя это явно не указано. - person Mao; 09.05.2016