Исключить тесты MSTest из определенных классов в шагах TeamCity

Поскольку вы не можете установить тестовую категорию для тестового класса с помощью MSTest, я решил сделать что-то похожее в названии, постфиксируя тестовые классы с помощью ...IntegrationTests всякий раз, когда они содержат медленные тесты.

В Visual Studio Test Explorer я могу исключить эти тесты, используя:

-class:IntegrationTests

Однако в TeamCity эта опция не работает. Я использую тестовую версию VSTest 2017 в последней версии TeamCity. Тем не менее, кажется, он имеет только TestCaseFilter вариант, который, кажется, отсутствует возможность исключить тесты в определенном классе?

Я использовал эту документацию VSTest.ConsoleRunner и этот пост оTestCaseFilter прийти к такому выводу. Я также прочитал документацию файла runsettings, чтобы увидеть, содержит ли он какую-либо информацию, но не повезло.

Моя цель - сделать 1 шаг TeamCity, который запускает все тесты в классах, которые не помечены как медленные, и еще один шаг с тестами в классах, которые отмечены.

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

Итог: как исключить тесты в классах, где имя класса содержит конкретную строку?

1 ответ

Атрибут TestCategory может использоваться на уровне класса / сборки. Смотрите здесь: https://blogs.msdn.microsoft.com/visualstudioalm/2017/02/25/mstest-v2-now-and-ahead/.

Также, пожалуйста, смотрите ту же ветку в твиттере здесь: https://twitter.com/pvlakshm/status/844905609409564672

Другие вопросы по тегам