表达式按文件名包含但由同一文件夹名称排除

时间:2013-05-16 22:51:05

标签: .net regex visual-studio-2012 mstest code-coverage

我正在试图弄清楚如何配置VS代码覆盖率运行设置以仅包含目标库,但不包括测试库而不包括第三方库:

语法如下:

<Include>
    <ModulePath>.*\\MyProject\..*\.dll$</ModulePath>
</Include>
<Exclude>
    <ModulePath>.*\.Test.dll$</ModulePath>
</Exclude>

String inside是一个完整的路径(看起来像),例如:

...\Projects\MyProject\trunk\MyProject.Data\bin\Debug\MyProject.Data.dll
...\Projects\MyProject\trunk\MyProject.Data\bin\Debug\MyProject.Data.Test.dll
...\Projects\MyProject\trunk\MyProject.Data\bin\Debug\Moq.dll

我的包含RegEx到目前为止导致包括目标dll和第三方dll。

如何包含

...\Projects\MyProject\trunk\MyProject.Data\bin\Debug\MyProject.Data.dll
                             ^^^^^^^^^^^^^^           ^^^^^^^^^^^^^^

但排除

...\Projects\MyProject\trunk\MyProject.Data\bin\Debug\Moq.dll
                             ^^^^^^^^^^^^^^

1 个答案:

答案 0 :(得分:0)

VS Code Coverage仅加载有.pdb文件的程序集。因此,最简单的解决方案实际上应该是删除外部库的.pdb文件。无论如何,你不太可能在那些内部进行调试。