РЕДАКТИРОВАТЬ : эта проблема была исправлена google в gtest 1.4.0; см. Оригинальный отчет об ошибке для получения дополнительной информации.
Я недавно переключился на gtest для своей среды тестирования C ++, и одна из его замечательных возможностей, которую я в настоящее время не могу использовать, - это возможность генерировать отчеты по тестам в стиле JUnit XML, которые затем могут быть прочитаны нашим hudson. построить сервер.
Вывод XML, сгенерированный набором тестов gtest, выглядит вполне правдоподобно:
<?xml version="1.0" encoding="UTF-8"?>
<testsuite tests="370" failures="0" disabled="0" errors="0" time="45.61" name="AllTests">
<testsuite name="application" tests="7" failures="0" disabled="0" errors="0" time="8.953">
<testcase name="zero_tasks_on_bootup" status="run" time="0" classname="application" />
...etc.
</testsuite>
</testsuite>
Я также попытался добавить задачу JUnitReport в мой скрипт сборки ant, который отлично работает и генерирует XML следующим образом:
<?xml version="1.0" encoding="UTF-8"?>
<testsuite tests="370" failures="0" disabled="0" errors="0" time="45.61" name="AllTests">
<testsuite name="application" tests="7" failures="0" disabled="0" errors="0" time="8.953">
<testcase name="zero_tasks_on_bootup" status="run" time="0" classname="application" />
...etc.
</testsuite>
</testsuite>
Проблема заключается в том, что всякий раз, когда я говорю antу опубликовать результаты теста JUnit, а затем указать его либо на необработанный XML-код результата теста, либо на скомпилированный результат, сгенерированный в задаче ant JUnitReport, hudson всегда жалуется на отсутствие результатов теста. .
Я не Java-парень, поэтому я не могу сказать, что здесь происходит, и я не могу найти пример того, как должен выглядеть JUnit XML. Может ли кто-нибудь помочь направить меня в правильном направлении?