在Visual Studio中按指定TestCategory运行自动化TestMethod
搞定VS 2017部署后仅运行SmokeTest类测试的配置
嘿,这事儿我熟!我来帮你搞定VS 2017 Community版本下,部署后运行指定TestCategory冒烟测试的配置问题~
1. 最直接的配置方式(推荐)
先澄清个小误区:你提到的「Override test run parameters」字段其实是用来覆盖.runsettings里的动态参数(比如测试环境URL、账号这类可变值)的,筛选TestCategory有更直接的方法!
在你添加的Visual Studio Test任务里,找到「Test filter criteria」输入框,直接填入:
TestCategory=SmokeTest
就这么简单!任务会自动识别所有标记了[TestCategory("SmokeTest")]的TestMethod,只跑这些冒烟测试。
2. 如果你一定要用Override字段的配置方式
要是因为项目需求必须通过「Override test run parameters」来实现筛选,那得先准备一个.runsettings配置文件:
<?xml version="1.0" encoding="utf-8"?> <RunSettings> <TestRunParameters> <!-- 定义一个用来接收筛选条件的参数 --> <Parameter name="SmokeTestFilter" value="" /> </TestRunParameters> <RunConfiguration> <!-- 把参数绑定到测试筛选器 --> <TestFilter>$(SmokeTestFilter)</TestFilter> </RunConfiguration> </RunSettings>
然后回到任务配置:
- 在「Settings file」里指定这个
.runsettings文件的路径 - 在「Override test run parameters」字段填入:
-param:"SmokeTestFilter=TestCategory=SmokeTest"
这样就能通过覆盖参数的方式,让测试只跑SmokeTest类用例。
3. 适配VS 2017的关键细节
别忘了在任务的「Visual Studio version」下拉框里选Visual Studio 2017,确保任务调用的是VS2017的测试运行器,不然可能会出现兼容性问题。
4. Selenium测试的小提醒
既然用了Selenium,还要注意:
- 测试代理环境得装对应版本的浏览器驱动(比如ChromeDriver要和Chrome版本匹配)
- 如果是在CI/CD管道里跑测试,记得把浏览器设为无头模式,不然没桌面环境会直接失败哦!
这样配置完,部署成功后任务就会自动精准运行你的冒烟测试啦~
内容的提问来源于stack exchange,提问作者Tscott
相关产品推荐
相关产品推荐

