Управление NDepend с помощью NUnit
-
21-08-2019 - |
Вопрос
Можно ли использовать NUnit для выполнения запросов CQL с использованием NDepend?Было бы неплохо иметь возможность просто включать библиотеки DLL NDepend в библиотеку UnitTests и писать тесты типа:
[Test] public void
DomainAssemblyHasNoDatabaseDependencies
...
или что-то подобное.
Это позволило бы очень легко интегрироваться с Team City и автоматически завершить сборку, если какой-либо из тестов статического анализа завершится неудачей.
Решение
Это возможно благодаря NDepend.API выпущен с NDepend v4, и особенно благодаря пространству имен NDepend.Запрос кода он содержит то, что необходимо для программного запуска запросов CQLinq или CQL code и правил, представленных в виде простой строки.
Вот документация для начала работы с NDepend.API.
Мы советуем ознакомиться с исходным кодом PowerTool под названием Код запроса с помощью CQLinq доступно в $NDependInstallPath$ Depend.PowerTools.Исходный код Depend.PowerTools.sln
Наконец, обратите внимание, что благодаря NDepend.API вы также можете напрямую писать свои кодовые запросы / правила или даже статический анализатор с помощью C # или VB.NET code (следовательно, код, который может быть встроен в ваши модульные тесты).