#cruisecontrol.net #testcomplete
#cruisecontrol.net #testcomplete
Вопрос:
Я унаследовал проект, который запускает скрипты TestComplete от CruiseControl. Для каждого скрипта есть запись в CCNet.Config, и каждая запись заканчивается следующим:
<publishers>
<merge>
<files>
<file action="Copy">
C:TestLogTestCompleteResultTestWebLog.mht
</file>
</files>
</merge>
<xmllogger />
<statistics />
Который, как я предполагал, копирует журнал TestComplete в это местоположение. Однако, если я изменю местоположение (т. Е. на C:testlog2TestWebLog.mht ) файл по-прежнему оказывается в C:TestLogTestCompleteResult. Я пытался отключить CruiseControl, перезагрузить систему и т.д., И файл по-прежнему оказывается в том же месте.
Я удалил каталог и файл, проверил отметку времени и просмотрел файл журнала. Все указывает на то, что это новый файл, созданный самым последним запуском скрипта TestComplete, но он всегда помещается в одно и то же место: C:TestLogTestCompleteResultTestWebLog.mht.
Есть ли какое-нибудь другое место, где можно определить этот путь?
Ответ №1:
Копирование: вместо объединения данных в журнал сборки, он скопирует указанные файлы в папку «сборка» в папке артефактов для проекта
В ccnet.config вы можете указать каталог артефактов для каждого проекта, в который будут помещены результаты сборки.
<project name="Project">
<artifactDirectory>C:ProjectDirartifacts</artifactDirectory>
...
</project>
Действие слияния по умолчанию заключается в объединении указанного файла с result.xml найдено в каталоге артефактов.
Действие слияния «Копировать» копирует указанный файл в папку artifactdirectory Build.
Файл, указанный вами в <file>...</file>
тегах, является исходным файлом, который будет скопирован в папку артефактов.
Ответ №2:
<merge>
Издатель включает существующий файл в отчет о сборке. Если вы хотите изменить местоположение, в котором создается файл, вам нужно изменить конфигурацию задачи (т. Е. в том месте, где фактически вызывается TestComplete).