0

因为您不能使用 MSTest 在测试类上设置测试类别,所以我选择在名称上做类似的事情,只要测试类...IntegrationTests包含运行缓慢的测试,就为它们添加后缀。

在 Visual Studio 测试资源管理器中,我可以使用以下方法排除这些测试:

-class:IntegrationTests

但是,在 TeamCity 中,此选项不起作用。我在最新版本的 TeamCity 中使用 VSTest 2017 测试引擎版本。但是,它似乎只有一个TestCaseFilter选项似乎缺少排除某个类中的测试的选项?

我使用了这个 VSTest.ConsoleRunner 文档这篇文章TestCaseFilter来得出这个结论。我还通读了runsettings 文件文档,看看它是否包含任何信息,但没有运气。

我的目标是让 1 个 TeamCity 步骤在“标记”为慢的类中运行所有测试,并在标记的类中运行另一个后续步骤

我目前看到的唯一解决方法是将我的所有测试项目分成两个项目,并将这些集成测试类移动到单独的程序集中。我宁愿不那样做。

底线:如何在类名包含特定字符串的类中排除测试?

4

1 回答 1

1

TestCategory 属性可以在类/程序集级别使用。请参阅此处:https ://blogs.msdn.microsoft.com/visualstudioalm/2017/02/25/mstest-v2-now-and-ahead/ 。

另外,请在此处查看相同的推特线程:https ://twitter.com/pvlakshm/status/844905609409564672

于 2017-03-27T15:26:02.700 回答