Pregunta

¿Es posible usar NUnit para ejecutar consultas CQL usando NDepend? Sería bueno poder incluir los dlls NDepend en una biblioteca UnitTests y escribir pruebas como:

[Test] public void
DomainAssemblyHasNoDatabaseDependencies
...

o algo similar.

Esto facilitaría la integración con Team City y fallaría automáticamente la compilación si fallara alguna de las pruebas de análisis estático.

¿Fue útil?

Solución

Esto es posible gracias a NDepend.API lanzado con NDepend v4, y especialmente gracias al espacio de nombres NDepend.CodeQuery que contiene lo que se necesita para ejecutar programáticamente consultas de código CQLinq o CQL y reglas presentadas como una cadena simple.

Aquí hay documentación para comenzar con NDepend.API .

Recomendamos mirar el código fuente de PowerTool llamado Código de consulta con CQLinq disponible en $ NDependInstallPath $ \ NDepend.PowerTools.SourceCode \ NDepend.PowerTools.sln

Observe finalmente que, gracias a NDepend.API, también puede escribir directamente sus consultas / reglas de código o incluso el analizador estático con código C # o VB.NET (de ahí el código que puede integrarse en sus pruebas unitarias).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top