运行 所有测试,但在报告中只有我想要的方法 运行
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
我必须安装程序集,一个用于测试,另一个是包含我要测试的方法的主程序集。
在我的测试程序集中我有很多 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