Я использую функцию покрытия кода dotCover в TeamCity для измерения охвата тестовых случаев в нашей сборке (C #, nunit). Недавно я добавил новый класс, который использует отражение для анализа целевого объекта, который реализует определенный интерфейс, вызывает метод интерфейса, а затем рекурсивно перебирает все свойства, которые ссылаются на объекты, которые реализуют этот же интерфейс, до тех пор, пока все доступные интересные объекты в дерево посещено.
Это хорошо работает, однако побочным эффектом является то, что при измерении покрытия в тестовом случае все достигнутые свойства считаются покрытыми и, следовательно, заметно искажаются покрытия.
Я бы хотел игнорировать либо конкретный тестовый прибор, либо тестовый набор для измерения покрытия кода. Возможно ли это?
Обратите внимание, что я не спрашиваю, как игнорировать определенный тестируемый класс. Другие испытательные приборы должны проверять те же самые объекты, в противном случае их следует измерять стандартным способом.
Единственное, о чем я подумал, - это переместить все это в новую сборку тестового набора, а затем использовать фильтр, подобный этому
-:Company.Project.DoNotRunCoverageTests.Tests
Есть ли лучший способ?