Bamboo с tSQLt — не удалось разобрать файл результатов теста

Прежде всего, я должен отметить, что я новичок в Atlassian Bamboo и непрерывной интеграции в целом. Это первый проект, где я использовал их.

Я создал множество модульных тестов, используя инфраструктуру tSQLt. Я также настроил Bamboo для:

  • Получите свежую копию репозитория из BitBucket
  • Удалите и заново создайте базу данных сборки
  • Используйте Red-Gate SQL Compare для развертывания объектов БД из исходного кода в сборочную БД.
  • Запустите тесты tSQLt
  • Вывод результатов тестов в формате XML в файл с именем TestResults.xml

Я проверил и могу подтвердить, что файл TestResults.xml создан.

Затем в Bamboo я добавил задачу JUnit Parser для использования содержимого этого файла TestResults.xml. Однако, когда эта задача запускается, она возвращает эту ошибку:

Failed to parse test result file

Сначала я подумал, что это может означать, что Bamboo не может найти файл. Я изменил задачу, создающую файл результатов, на вывод файла с именем TestResults2.xml. Когда я это сделал, синтаксический анализатор JUnit вернул эту ошибку:

Failing task since test cases were expected but none were found.

Итак, я предполагаю, что первое сообщение об ошибке означает, что Bamboo находит файл, но просто не может его проанализировать.

Я понятия не имею, с чего начать, в чем именно проблема. У кого-нибудь есть идеи?


person user12925    schedule 10.01.2013    source источник
comment
Вы можете поделиться выходным XML здесь?   -  person Sebastian Meine    schedule 11.01.2013
comment
Я не думаю, что файл был найден в любом случае. Попробуйте использовать полный путь, чтобы убедиться, с кавычками.   -  person Trey Gramann    schedule 21.02.2013
comment
Что мы сделали, так это создали шаблон t4 для генерации кода для запуска тестов tsqlt и подтверждения результата. Схема tsqlt довольно проста, поэтому найти результаты тестов и т. д. совсем несложно.   -  person Andrew    schedule 15.04.2013


Ответы (2)


У меня была похожая проблема, но оказалось, что это странное поведение бамбука, требующего изменения файловых штампов, чтобы иметь видимость файла JUnit.

В среде Windows вам просто нужно добавить «задачу сценария» перед «задачей JUnit».

powershell  (ls *.xml).LastWriteTime = Get-Date

Справочник

https://jira.atlassian.com/browse/BAM-12768

person duyker    schedule 15.05.2013

У меня было несколько таких случаев, и я смог исправить это, удалив одинарные кавычки и символы больше/меньше из имен тестов внутри *.rb файл.

Пример

test убедитесь, что 'go_to_world' удалено из заголовка и длина ‹ 23

изменить, чтобы удалить одинарные кавычки и символ ‹

проверьте, что go_to_world удален из заголовка и имеет длину менее 23

Очень распространены сокращения: не буду, не должен, или притяжательные: данные сосуда.

А также символы ‹ или ›.

Я думаю, что в синтаксическом анализаторе есть ошибка, которая просто не экранирует эти символы в тестовом заголовке должным образом.

person jbridge    schedule 31.10.2013