标签: cqlinq

是否可以从NDepend分析中排除整个名称空间?

我有一个设置,其中Visual Studio 2010运行测试覆盖率分析,并且它的输出在集成构建期间被NDepend吸收.

一些程序集包含NDepend需要忽略的生成代码.
有没有办法做到这一点?最好是整个命名空间.

code-coverage namespaces ndepend visual-studio-2010 cqlinq

10
推荐指数
1
解决办法
1947
查看次数

使用NDepend查找方法的所有用法(包括通过接口)

使用NDepend,我如何找到特定方法或属性的所有,直接和间接使用?

特别是,我需要找到通过使用路径某处的接口发生的用法.谢谢!

c# ndepend cqlinq

7
推荐指数
1
解决办法
1529
查看次数

用NUnit驱动NDepend

是否可以使用NUnit使用NDepend运行CQL查询?能够将NDepend dll包含在UnitTests库中并编写如下测试会很高兴:

[Test] public void
DomainAssemblyHasNoDatabaseDependencies
...
Run Code Online (Sandbox Code Playgroud)

或类似的东西.

这样可以很容易地与Team City集成,并且如果任何静态分析测试失败,则会自动使构建失败.

build-automation teamcity nunit ndepend cqlinq

7
推荐指数
1
解决办法
291
查看次数

如何在类型属性上限制NDepend方法查询

我试图让NDepend使用标准的"方法太大"查询的修改版本来识别长方法.

我不想报告开发人员几乎无法控制的长方法,所以我使用DebuggerNonUserCode属性过滤掉生成的代码InitializeComponent().

不幸的是,我仍然得到一些误报,因为报告了生成类型中的方法.问题是虽然类型本身具有DebuggerNonUserCode属性,但方法没有,因此尽管它们是生成的,但它们仍包含在输出中.

我正在寻找类似于类型和方法之间的连接:给我所有没有DebuggerNonUserCode属性的类型并对其运行查询,但我无法弄清楚如何在CQL中表达这一点.

对于某些程序集,我可以简单地过滤全名,但不幸的是我们的一些程序集混合了开发人员制作和生成的类型.不幸的IsGeneratedByCompiler是,在这种情况下也不能使用.

我的查询

WARN IF Count > 0 IN SELECT METHODS WHERE 
   NbLinesOfCode > 30 AND
   !HasAttribute "System.Diagnostics.DebuggerNonUserCodeAttribute" AND
   !NameIs "InitializeComponent()"
   ORDER BY NbLinesOfCode DESC
Run Code Online (Sandbox Code Playgroud)

c# ndepend cql cqlinq

7
推荐指数
1
解决办法
1564
查看次数

NDepend CQL查询缺少IDisposable实现

我意识到这个问题正在寻找的查询不足以找到IDisposable实现的每个小问题,但每个早期警告都很重要,所以我会采取我能得到的.

我想知道是否有人为NDepend提出了一个CQL查询,它将列出所有没有实现IDisposable的类,但是有一个或多个字段.一个类可能通过一个bug(即有人忘了检查IDisposable实现的字段类型)或者通过代码进化(或者某个字段中使用的类在某个地方获得IDisposable)来结束此查询的结果列表.以后的日期没有更新所有用法).

查找未实现IDisposable的所有类的简单查询是:

SELECT TYPES WHERE !Implement "System.IDisposable"
Run Code Online (Sandbox Code Playgroud)

但是,这当然不会检查类是否应该为上述规则实现IDisposable.

有没有人有这样的疑问?我仍然在掌握CQL,所以这部分让我无法理解.

ndepend idisposable cql cqlinq

4
推荐指数
1
解决办法
575
查看次数

如何指示NDepend忽略EF类?

我在NDepend上遇到一点问题而不是忽略生成的代码.在创建实体数据模型时,它会在EF生成的designer.cs文件中查找围绕方法的问题.该类注释了"自动生成"注释,但仍被NDepend选中.

我似乎无法找到如何强制*.designer.cs被忽略,甚至忽略没有外卡的特定文件.我最接近的是几年前的这篇文章,其中帕特里克提到计划这样做,但仅此而已.

我错过了什么吗?有没有简单的方法来排除这个?

.net entity-framework ndepend cqlinq

4
推荐指数
1
解决办法
1544
查看次数

使用NDepend查看代码度量标准中的趋势

我有一个NDepend版本用于构建服务器,并自动生成NDepend报告.因此,每晚构建都会发挥作用,并生成NDepend报告/ XML.我现在想要做的是跟踪一些时间因素的指标.

因此,例如,在y轴上具有特定类型或命名空间(例如,传入耦合)的图形与x轴上的时间可能是很好的.我知道我可以比较两个NDepend构建并具有代码和度量差异,但我想要做的是比较相同的单个度量或N个构建的度量以查看正在进行的趋势.

我有点假设当前没有一个工具可以做到这一点,而且我必须自己动手,但如果有一个,我肯定喜欢在投入时间之前听到它.那么,NDepend本身是否支持这样的东西,或者是否存在某些我可以使用的实用工具?

除了NDepend之外,我也愿意接受其他可以实现这一目标的技术建议,尽管由于已经投入了NDepend并熟悉它的工作方式,我对NDepend有很强的偏好.

提前致谢.

c# static-analysis ndepend visual-studio-2010 cqlinq

3
推荐指数
1
解决办法
395
查看次数