好吧,我决定的有点像斯蒂芬沃德的回答。我将所有覆盖文件放入一个目录并运行NCover.Reporting.exe Path\To\My\Directory\*.xml //s Merged.nccov
.
他没有得到复选标记,因为他的回答告诉我我不能在命令行上使用通配符是不正确的;事实上,通配符是NCover 识别该目录中 XML 文件的唯一方法。我认为他已经习惯了 Unix 世界(考虑到他的回答中有一些 Unix FUD),shell 负责处理通配符。windows shell 不会尝试扩展通配符,因此我们没有遇到长度限制。
不过,使用这个解决方案,我能够使我们的运行速度比旧的每次测试后合并方法快 20%,这很好。(覆盖运行仍然是非覆盖运行的四倍,但我们不需要为每个测试运行覆盖)
当我尝试 commondream 的答案时,不幸的是 NCover 会定期崩溃。我认为测试系统不喜欢启动 .NET 1、1.1、2.0、3.0、3.5 和 4.0 程序集,以及 silverlight 包和紧凑框架之类的东西(我们的产品需要能够在所有这些类型的程序集)。如果您不需要为运行那种东西而发疯,那么//pn
他描述的选项可能会很好用。
当我尝试 joe.feser 的回答时,不幸的是我无法弄清楚 NCover 报告设置文件的格式。报告工具接受的 XML 有大量文档;它查找的根 XML 节点除外。它拒绝识别我生成的任何 XML 文件,因为根节点命名不正确;我认为它正在验证我不知道的某种形式的 DTD。如果有人想发布示例文件,请继续。
希望这对将来有类似问题的人有所帮助:)