Kil*_*fer 10 code-coverage namespaces ndepend visual-studio-2010 cqlinq
我有一个设置,其中Visual Studio 2010运行测试覆盖率分析,并且它的输出在集成构建期间被NDepend吸收.
一些程序集包含NDepend需要忽略的生成代码.
有没有办法做到这一点?最好是整个命名空间.
Code Query and Rule over LINQ (CQLinq)确实提供了一种忽略生成代码的工具。
有一个名为JustMyCode的方便的预定义域,类型为ICodeBaseView。
域JustMyCode表示CQLinq 的一种工具,用于从 CQLinq 查询结果中消除生成的代码元素。例如,以下查询将仅匹配不是由工具(如 UI 设计器)生成的大型方法:
from m in JustMyCode.Methods where m.NbLinesOfCode > 30 select m
Run Code Online (Sandbox Code Playgroud)
生成的代码元素集由以 CQLinq 关键字notmycode为前缀的 CQLinq 查询定义。例如,下面的查询匹配名称以“.designer.cs”结尾的源文件中定义的方法:
notmycode from m in Methods where
m.SourceFileDeclAvailable &&
m.SourceDecls.First().SourceFile.FileName.ToLower().EndsWith(".designer.cs")
select m
Run Code Online (Sandbox Code Playgroud)
该CQLinq查询亚军执行所有notmycode查询依靠前查询JustMyCode,因此域JustMyCode为所有定义一次。显然,如果notmycode查询依赖于JustMyCode域,CQLinq 编译器会发出错误。
有 4 个默认的notmycode查询,可轻松调整以满足您的需求。请注意,名称空间没有默认的notmycode查询,但您可以创建自己的查询: