我有一些单元测试的装置,已经被标记为 [Category("Fast")]。
如何配置TeamCity,以便仅运行类别名称为“Fast”的单元测试?
我确定一定有方法。
我有一些单元测试的装置,已经被标记为 [Category("Fast")]。
如何配置TeamCity,以便仅运行类别名称为“Fast”的单元测试?
我确定一定有方法。
如果你想要在MSTest运行器中排除多个测试类别,可以在“附加命令行参数”中使用"/category:!ServiceDependent"
来排除ServiceDependent
测试,或者使用"/category:!ServiceDependent&!EntryPoint"
来同时排除ServiceDependent
和EntryPoint
测试。当然,你需要相应地装饰测试。至于为什么要这样做?那是另一回事了...
mstest /category:Fast
。类似的东西也应该存在于每个单元测试框架(NUnit,XUnit)中。
当您使用Team City时,您应该仔细检查单元测试运行选项,并找到一个地方可以提供有关类别的附加选项(通常命名为“命令行选项”,“附加参数”或类似名称)。我不记得确切的内容,但我认为它应该存在于Team City内置任务中以进行单元测试运行。
即使缺少用于单元测试运行的内置任务,您也可以随时切换到一般脚本执行任务,并在其中运行mstest /category:Fast
等内容。
我花了相当多的时间来弄清楚在VS Tests步骤中应该如何使用它:
Team City ExampleVS Tests的语法:
排除示例:
/TestCaseFilter:TestCategory!=Integration