Проблема с GHUnit + Хадсон / Дженкинс в Xcode 4

Я следовал этому очень хорошему руководству о том, как настроить GHUnit в Xcode 4 и интегрировать его с Hudson/Jenkins.

Кажется, что все работает нормально, когда проходят все тесты, но когда тест не проходит, Hudson / Jenkins не создает "результаты теста", где вы можете на самом деле проверить детали тестовых случаев, которые не прошли.

Проверяя вывод консоли я вижу это:

 Тестовый набор "Тесты" завершен.
Выполнено 2 из 2 тестов, с 1 отказом за 0,024 секунды (0 отключено).

Неудачные тесты:
    ExampleTest/testFoo

Написал JUnit XML успешно.
Команда /bin/sh не выполнена с кодом выхода 1


** СТРОИТЬ НЕ УДАЧИ **


Следующие команды сборки не выполнены:
    PhaseScriptExecution "Выполнить сценарий" build/FirstUnitTestingProject.build/Debug-iphonesimulator/Tests.build/Script-DA6E61A913A94E9F00DE8C5B.sh
(1 сбой)
make: *** [test] Ошибка 65
Запись результатов теста
Закончено: НЕИСПРАВНОСТЬ 

Сценарий, который выполняется, можно найти здесь.

Это терпит неудачу в обоих, Дженкинс и Хадсон с тем же исключением.

Кто-нибудь знает как это исправить?

Благодарю.

2 ответа

Если тест не пройден, то RunTests.sh выходит с ненулевым статусом, и XCode считает, что сборка не удалась. Я столкнулся с той же проблемой, и я нашел этот обходной путь: заменить последнюю строку RunTests.sh этим:

#exit $RETVAL
exit 0

Поэтому сборки продолжают работать, даже если некоторые тесты не пройдены.

Более того, если вы используете действие после сборки для публикации результатов тестов, сборка помечается как нестабильная, когда некоторые тесты не выполняются (это именно то поведение, которое я хотел).

Вик, глядя на консольный отчет, все кажется нормальным. Вот как будет выводиться консоль при сбое тестового примера. Я попробовал сценарий, изменив контрольный пример на неудачу. Мне удалось получить полную информацию о неудачном тесте. Я использую Хадсон. Посмотрите на изображение ниже:

Другие вопросы по тегам