2017-06-01 51 views
0

我必须装配,一个用于测试,另一个是具有我想测试的方法的主要装配。运行所有的测试,但在报告中只有我想要运行的mehtods

在我的测试程序集中,我有很多类,每个类都测试主程序集的类的方法。总的来说,在所有的课程中,我有大约300种测试方法,但在MyClass01Test中,我只有30种测试方法。我想只运行这个类中的方法,而不是所有的测试。

我想使用此过滤器:

"-filter:+[*]*.MyMainClass -[*Tests]*" 

的问题是,它运行所有测试,没有只在MyMainClassTest类中的测试在我的测试组件。但是,在我通过reportgenerator获得的报告中,我只从MyClass01获得了方法,它是正确的。

,我使用完整的命令是这样的:

"D:\programas\OpenCover\OpenCover.Console.exe" -register:user "-filter:+[*]*.MyMainClass01 -[*Tests]*" -target:"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\MSTest.exe" -targetargs:"/testcontainer:\"F:\.MyAssmeblyTests.dll\"" -output:"F:\tests\resutlts.xml" 

回答

1

你必须告诉MSTest的哪些测试应该执行。 这与OpenCover和ReportGenerator无关。他们只跟踪执行并创建报告。

你可以找到MSTest的这里的相关参数: https://msdn.microsoft.com/en-US/library/ms182489.aspx

+0

您可能还需要与MSTEST使用'/ noisolation'开关。 –

相关问题