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"

https://github.com/nunit/docs/wiki/Console-Command-Line

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