gpt4 book ai didi

.net-core - 在 .Net Core 3.1 中如何从代码覆盖率中排除自动属性?

转载 作者:行者123 更新时间:2023-12-04 10:13:46 25 4
gpt4 key购买 nike

这个问题是Exclude auto properties from Code Coverage in Visual Studio 2015的现代轮回我只对 VS 2019 和 .Net Core 3.1 感兴趣。

我当前的 CodeCoverage.runsettings 文件包含以下部分:

<Attributes>
<Exclude>
<Attribute>^System\.Diagnostics\.DebuggerHiddenAttribute$</Attribute>
<Attribute>^System\.Diagnostics\.DebuggerNonUserCodeAttribute$</Attribute>
<Attribute>^System\.CodeDom\.Compiler\.GeneratedCodeAttribute$</Attribute>
<Attribute>^System\.Runtime\.CompilerServices\.CompilerGeneratedAttribute$</Attribute>
<Attribute>^System\.Diagnostics\.CodeAnalysis\.ExcludeFromCodeCoverageAttribute$</Attribute>
</Exclude>
</Attributes>

关键是自动属性归因于 CompilerGenerated属性。但是,这种做法是错误的,因为 async编译器也会将方法转换为具有相同属性的方法。因此,使用这种方法我们会失去对 async 的覆盖。方法。不好。

那么,在 VS 代码覆盖率中是否有一种方法可以像我们在 OpenCover 或 DotCover 中所做的那样跳过自动属性的覆盖率?

最佳答案

以下加我的.runsettings文件排除了自动 Prop ,但不排除手动编码的属性或异步方法。
<CodeCoverage><Functions><Exclude>

     <Function>.*get_.*</Function>
<Function>.*set_.*</Function>

不完美,但...

关于.net-core - 在 .Net Core 3.1 中如何从代码覆盖率中排除自动属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61180574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com