TestStack White - запускать тесты из командной строки
Я ищу решение для запуска моих тестов из командной строки.
- Я создал UnitTest Procjet в VisualStudio2017 для своего решения.NET.
- В проект добавлен пакет TestStack.White NuGet.
- Тест бегло работает, когда я начинаю с VisualStudio2017.
Я хотел бы начать это также с Дженкинса. Я думаю, что это проще всего сделать из командной строки, поэтому я добавляю это в свою конфигурацию конвейера (Jenkinsfile)
stage('Run UI Tests') { steps { bat('"C:\\PATH_TO_MSTEST\\mstest" /testcontainer:PATH_TO_MY_TEST_PROJECT\\bin\\Debug\\MyTests.dll') } }
Когда я пытаюсь запустить его из cmd, как при обычном модульном тестировании, он не работает.
Это говорит:
Starting execution...
No tests to execute.
Я строю проект до того, как начну этап "Выполнение тестов пользовательского интерфейса".
Есть идеи, как заставить это работать? Могли действительно найти его на stackru, github-проблемах TestStack и других местах славы в сети
1 ответ
Нашел решение. На моей локальной машине разработчика это работало, версия mstest была 14 На машине агента сборки версия mstest была 15, которая как-то не работала (она не имела никакого отношения к TestStack White, просто не работали модульные тесты)
То, что я делаю, вызывает vstest.console.exe вместо mstest.
C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\Extensions\TestPlatform\vstest.console.exe
Итак, вместо
stage('Run UI Tests') {
steps {
bat('"C:\\PATH_TO_MSTEST\\mstest" /testcontainer:PATH_TO_MY_TEST_PROJECT\\bin\\Debug\\MyTests.dll')
}
}
Моя команда в Jenkinsfile была:
stage('Run UiTests') {
steps {
bat('"C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\TestAgent\\Common7\\IDE\\Extensions\\TestPlatform\\vstest.console.exe" PATH_TO_MY_TEST_PROJECT\\bin\\Debug\\MyTests.dll')
}
}
Nunit 3-console - отличная альтернатива MSTEST. Пожалуйста, перейдите по ссылке ниже.
например, nunit3-console \bin\Debug\Automation.dll - где "cat =Smoke-Tests"