运行 所有测试,但在报告中只有我想要的方法 运行

Run all the tests but in the report only there are the methods that I want to run

我必须安装程序集,一个用于测试,另一个是包含我要测试的方法的主程序集。

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

我正在尝试使用这个过滤器:

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

问题是它 运行 包含所有测试,而不仅仅是我的测试程序集中的 MyMainClassTest class 中的测试。但是,在我使用 reportgenerator 获得的报告中,我只获得了 MyClass01 中的方法,这是正确的。

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

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

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

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