是否可以使用 NUnit 使用 NDepend 运行 CQL 查询?如果能够在 UnitTests 库中包含 NDepend dll 并编写如下测试,那就太好了:
[Test] public void
DomainAssemblyHasNoDatabaseDependencies
...
或类似的东西。
这将使与 Team City 集成变得非常容易,并且如果任何静态分析测试失败,则构建会自动失败。
是否可以使用 NUnit 使用 NDepend 运行 CQL 查询?如果能够在 UnitTests 库中包含 NDepend dll 并编写如下测试,那就太好了:
[Test] public void
DomainAssemblyHasNoDatabaseDependencies
...
或类似的东西。
这将使与 Team City 集成变得非常容易,并且如果任何静态分析测试失败,则构建会自动失败。
这要归功于与 NDepend v4 一起发布的NDepend.API,尤其要归功于命名空间NDepend.CodeQuery,其中包含以编程方式运行 CQLinq 或 CQL 代码查询所需的内容以及以简单字符串形式呈现的规则。
我们建议在$NDependInstallPath$\NDepend.PowerTools.SourceCode\NDepend.PowerTools.sln中查看名为Query Code with CQLinq的 PowerTool 的源代码
最后请注意,由于 NDepend.API,您还可以直接编写代码查询/规则,甚至使用 C# 或 VB.NET 代码(因此可以嵌入到单元测试中的代码)的静态分析器。