首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vstest.console.exe以ClassName为/testcasefilter

vstest.console.exe以ClassName为/testcasefilter
EN

Stack Overflow用户
提问于 2016-08-23 08:08:02
回答 3查看 6.4K关注 0票数 11

我正在寻找通过ClassName使用vstes.console.exe执行单元测试,任何帮助

我试过

代码语言:javascript
复制
/TestCaseFilter:"ClassName=ProgressTests"

但这会引发这个错误:

错误:没有测试匹配筛选器,因为它包含一个或多个无效的属性(ClassName)。指定包含有效属性(TestCategory、优先级、FullyQualifiedName、名称)的筛选器表达式,然后重试。

谢谢

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-02-03 15:13:40

可以通过指定完全限定的类名来运行测试:

代码语言:javascript
复制
vstest.console MyBusinessDomain.Tests.dll /testcasefilter:FullyQualifiedName~MyBusinessDomain.Tests.Shopping.Cart

其中:

MyBusinessDomain.Tests.dll是测试dll。

MyBusinessDomain.Tests.Shopping.Cart是完全限定的类名。

也可以按命名空间运行测试类:

代码语言:javascript
复制
vstest.console MyBusinessDomain.Tests.dll /testcasefilter:FullyQualifiedName~MyBusinessDomain.Tests.Shopping

此命令将在MyBusinessDomain.Tests.Shopping命名空间下运行所有测试。

注意: FYI,vstest.console比mstest更新,是通过命令行运行的首选。可以将它添加到具有此位置的环境路径中(对于VS2015):

代码语言:javascript
复制
C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow
票数 13
EN

Stack Overflow用户

发布于 2016-09-20 15:20:22

根据https://blogs.msdn.microsoft.com/vikramagrawal/2012/07/23/running-selective-unit-tests-in-vs-2012-rc-using-testcasefilter/的说法-- "ClassName只适用于Windows应用程序的单元测试,目前无法用于经典的MSTest“,尽管这篇博文是几年前发布的。

您可以只使用/testcasefilter:FullyQualifiedName~NameSpace.Class中的FullyQualifiedName筛选器类型。

票数 5
EN

Stack Overflow用户

发布于 2018-01-18 02:46:41

tilda ~的意思是“包含”,所以如果Foobar是类的名称:

代码语言:javascript
复制
vstest.console bin\Debug\MyTests.dll /TestCaseFilter:FullyQualifiedName~Foobar

请参阅https://msdn.microsoft.com/en-us/library/jj155800.aspx

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39095681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档