OpenCover是否可以并行运行测试?有没有选择吗?

时间:2019-07-01 15:33:07

标签: code-coverage mstest opencover vstest vstest.console.exe

在某些.NET程序集上运行OpenCover.console时遇到一些问题。

我们看到只有在OpenCover下运行时,某些MSTEST测试才会失败。

这是怎么回事,我们有一些正在读取和写入LocalDB数据库的测试。是的,这些比单元测试更恰当地称为集成测试,但是它们是我们需要测试的测试功能。

有问题的测试首先要清除其使用的表,填充种子数据,运行一些应将记录插入数据库的代码,然后读取数据库以确保记录存在。

我们看到的是,除了没有看到我们期望的所有记录之外,所有内容都可以正常运行。

我们假设的是,从OpenCover运行时,测试可能会并行运行,并且一个测试的清除代码正在运行,而另一测试的测试代码却在运行。

那么,这些问题:

  • OpenCover是否可以并行运行测试?
  • 是否可以将其配置为不?
  • 更好-是否可以将其配置为不在某些测试中配置,而不是在其他测试中配置? (我们的大多数测试都访问数据库,并且并行化对他们来说不是一件坏事。)

我们正在使用的命令:

<path>\OpenCover.Console.exe ^
    -target:"<path>\vstestconsole.exe" ^
    -targetargs:"/Logger.trx <listofassemblies>" ^
    -excludebyattribute:*.TestClass*;*.TestMethod*;*.ExcludeFromCoverage* ^
    -output:TestResults\outputCoverage.xml ^
    -filter:"<listoffilters" ^

0 个答案:

没有答案