0

我正在创建一个 RunSettings 文件,它将从 VS2012 的代码覆盖结果中排除所有属性和构造函数。我知道 ExcludeFromCodeCoverage 属性,但是我想在 runsettings 文件中使用正则表达式来实现这一点。我的 get 和 set 方法的正则表达式确实可以消除属性的代码覆盖,但它不适用于构造函数。

<Functions>
                        <Exclude>
                            <Function>^Fabrikam\.UnitTest\..*</Function>
                            <Function>^std::.*</Function>
                            <Function>^ATL::.*</Function>
                            <Function>.*::__GetTestMethodInfo.*</Function>
                            <Function>^Microsoft::VisualStudio::CppCodeCoverageFramework::.*</Function>
                            <Function>^Microsoft::VisualStudio::CppUnitTestFramework::.*</Function>                             
                             <Function>.*\.ctor.*</Function>                                
                              <Function>.*\.set_.*</Function>
                              <Function>.*\.get_.*</Function>
                        </Exclude>
                    </Functions>
4

2 回答 2

1

你有没有尝试过

<Function>.*\.\.ctor.*</Function>

因为ctor前面已经有一个点

于 2013-01-15T02:29:22.183 回答
1

我今天遇到了同样的问题。在玩了一些正则表达式之后,我想出了这个:

<Function>.*(\.[^\.\(]*)\1\(.*</Function>

或在这里尝试正则表达式

于 2015-03-22T10:24:35.590 回答