Stu*_*ser 5 unit-testing code-generation entity-framework code-coverage .net-4.0
我已经在资源和其他SO问题中看到了关于从覆盖率统计中提取代码的问题[DebuggerNonUserCode]和[ExcludeFromCodeCoverage]属性,并想知道是否可以自动将此属性添加到使用.NET 4.0的实体框架生成的代码中的类.
它还需要是类级别还是可以在diagram.Designer.cs级别上,需要一个属性来生成该图生成的所有代码?
是的,这是可能的.您可以使用自定义T4模板来控制codegen.这比你想象的要容易.
由于分部类(实体框架创建的)合并属性,如果该属性是模板中的类级别,则其他分部类中的扩展功能也会被排除,因此必须在方法级别应用它。
我发现执行此操作的最佳方法是使用 T4(如@Craig Stuntz 的回答中所推荐)来:
using System.Diagnostics.CodeAnalysis;在文件顶部然后[ExcludeFromCodeCoverage]通过搜索应用到 getter、setter 和 Factory 方法:
#>get#>setTemplate_FactoryMethodComment并将它们放置在适当的地方。
使用Tangible 的 T4 编辑器 Extension for VS使这变得更加容易。
这是我的第一次尝试,它似乎有效,“您的里程可能会有所不同”,因此请完成测试运行以确保一切正常运行。
| 归档时间: |
|
| 查看次数: |
2299 次 |
| 最近记录: |