Помещение вывода консоли из тестов NUnit в результаты xml - PullRequest
3 голосов
/ 27 января 2012

Наш процесс сборки запускает серию интеграционных тестов, которые попадают в веб-сервис. Каждый из этих тестов генерирует уникальный идентификатор, который используется веб-службами для сопоставления сообщений журнала с вызовами служб. Идентификатор записывается в стандартный вывод во время тестов.

Это прекрасно работает при локальном запуске тестов с использованием Resharper, поскольку он связывает вывод stdout с отдельным тестом. Однако при запуске тестов из консольного приложения NUnit выходные данные stdout могут быть записаны только в консоль или в отдельный файл из самих результатов, но не в файл результатов xml, используемый CruiseControl.NET для отображения результатов теста.

Кто-нибудь знает, как включить встроенный вывод stdout в файл результатов xml, чтобы он отображался на экране NUnit Details?

1 Ответ

0 голосов
/ 30 ноября 2012

Создаете ли вы merge? NUnit xml-файл, который необходимо объединить в протокол сборки, сконфигурируйте публикатора слияния , прежде чем просматривать какие-либо выходные данные.

<merge>
  <files>
    <file>Nunit*.xml</file>
  </files>
</merge>

Приложение Если вы можете записать его в отдельный файл foo.txt, вы всегда можете объединиться с вашим протоколом сборки.Как написано выше, вы можете легко объединить xml-файлы с вашим протоколом сборки, поэтому остается только один вопрос: как преобразовать ваш файл foo.txt в файл foo.xml?В NAnt вы можете загрузить текстовый файл, используя

  <loadproperty property="myprop" file="foo.txt"/>
  <xmlpoke file="blank.xml" value="${myprop}" xpath="x/y/z" />

Сравните также с http://www.cruisecontrolnet.org/projects/ccnet/wiki/NUnit_Task и http://confluence.public.thoughtworks.org/display/CCNET/Using+CruiseControl.NET+with+NUnit

...