2015-03-03 6 views
0

Использование TeamCity 9.0.2, у меня есть Nunit построить шаг со следующей конфигурацией:Почему все классы отображаются дважды в результатах dotCover в TeamCity?

Выполнить тесты из:. ** \ * Tests.dll
Не запускать тесты из: ** \ OBJ \ ** \ * длл
.NET Покрытие инструмента: JetBrains dotCover
Фильтры: -:. MyAssembly.Tests (наряду с несколькими пространствами имен в основной сборке исключить)

После того, как я запустил сборку, отчет о покрытии кода показывает каждый класс дважды, с тем же самым выходом/статистикой для обоих. Например:
Класс 1 100% (2/2) 100% (20/20) 75% (75/100)
Класс 1 100% (2/20) 75% (75/100))
Класс 2 100% (4/4) 100% (30/30) 80% (120/150)
Класс 2 100% (4/4) 100% (30/30) 80% (120/150)

Кто-нибудь еще видел такое же поведение? Если да, то что вы можете предложить решить проблему?

+0

Боюсь, что без журналов невозможно будет найти причину проблемы. Если вы добавите параметр конфигурации teamcity.agent.dotCover.log в конфигурацию сборки с пустым каталогом в агенте, все файлы журналов dotCover будут размещены там, а TeamCity опубликует zipped-журналы как скрытые сборки артефакта: .teamcity/.NETCoverage/dotCoverLogs.zip. Отправьте журналы на этот адрес электронной почты: [email protected] – Maria

ответ

2

Если у вас есть две разные конфигурации компоновки, которые могут выполняться на одном агенте сборки, вы можете получить, например, две аналогичные сборки тестов, которые соответствуют шаблону «***. Tests.dll». В результате отчет о покрытии может содержать дубликаты данных.

Вы можете более точно определить целевые сборки в своем шаге сборки (выполнить шаги «Сбросить») или очистить соответствующий каталог проверки перед сборкой («Параметры управления версиями»: «Очистить все файлы в каталоге проверки до сборки»).

+0

Спасибо, Мария. Я пробовал оба эти подхода самостоятельно, и они оба работают. – witters

Смежные вопросы