запускать тесты в mstest без компиляции / сборки - PullRequest
10 голосов
/ 06 апреля 2009

есть ли способ? мне нужно ждать сборки каждый раз, когда я запускаю тест? Я хочу построить из визуальной студии не из теста

спасибо

Ответы [ 3 ]

10 голосов
/ 23 сентября 2010

Каждый раз, когда ваш код изменяется, и вы запускаете тест, он собирается делать сборку ... так что технически вы можете запускать тест снова и снова, а он будет собираться только в первый раз, но как только вы запустите тест, почему Вы бы запустили их снова, не внося изменения в код?

Несколько вещей, которые я использую, чтобы ускорить ваш тест:

  1. Установите флажок «Только создавать запускаемые проекты и зависимости при запуске», расположенные в меню «Параметры» -> «Проекты и решения» -> «Создать и запустить».

  2. Изучите сочетания клавиш
    а. «Ctrl + R, T» Запускает тест в текущем контексте, поэтому, если ваш курсор находится внутри метода test, он будет запускать только этот тест, но когда вы делаете это внутри не тестового класса, он будет запускать весь ваш тест.
    б. "Crtl + R, Ctrl + T" Тест отладки такой же, кроме отладки.
    с. Другие можно найти здесь , это 2008, если вам нужно сослаться на других, вы можете найти их через Google.

  3. Убедитесь, что ваш тест не вызывает базу данных или другие ресурсоемкие ресурсы, используйте насмешки и заглушки.

  4. Запускать только небольшие наборы тестов, т. Е. Если я работаю в классе обслуживания, я запускаю только тест класса обслуживания.

Редактировать: Повторное чтение вашего вопроса, если вы хотите построить, а не из теста, вы можете просто перейти в меню и нажать Build-> Build Solution или нажать F6. Также было бы полезно, если бы вы указали, какую версию Visual Studio вы используете, потому что 2010 год отличается в том смысле, что вы должны нажать кнопку «Обновить». В любом случае, вы можете уточнить?

2 голосов
/ 19 июля 2017

Это старый вопрос, но я продолжаю видеть, как люди его задают, и проблема все еще актуальна в VS2017, а также в других тестовых средах (Xunit и т. Д.), Запускаемых из VS.

Я не знаю, как заставить ВС перестать строить все время. Но я знаю, как обойти компиляцию - запускайте свои тесты из консоли, а не из VS. Если вы используете ReSharper, он есть.

Если вы не используете ReSharper, для MSTest вы можете начать здесь. https://msdn.microsoft.com/en-us/library/ms182489.aspx

Если вы не используете ReSharper, для XUnit вы можете начать здесь. https://xunit.github.io/docs/getting-started-desktop.html#add-xunit-runner-ref

2 голосов
/ 24 сентября 2010

Любые изменения в исходном коде вызывают компиляцию, потому что для запуска тестов VS нуждается в обновленной DLL с тестами.

Если вы уже скомпилировали проект, вы можете запустить тест несколько раз без компиляции.

PS: я запускаю MSTest, используя TestDriven.NET , так как для меня это быстрее.

...