我正在寻找一种从命令行开始测试的解决方案。
我也想从詹金斯开始。我认为从命令行最容易做到这一点,所以我将它添加到我的管道配置(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.
我在开始'运行UI测试'阶段之前构建项目。
任何想法如何让它发挥作用?可以在stackoverflow,testStack的github问题以及网络上的其他荣耀地点找到它
答案 0 :(得分:2)
找到解决方案。 在我的本地开发人员计算机上它正常运行, 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')
}
}
答案 1 :(得分:0)
nunit3-console是MSTEST的绝佳替代品。请参考下面的链接。
例如 nunit3-console \ bin \ Debug \ Automation.dll-其中“ cat = Smoke-Tests”