2013-09-17 2 views
0

Использование опции ouput для генерации XML-файла с результатом теста иногда создает разбитые xml-файлы. Команда используется для создания XML-результатов:Funcunit иногда генерирует недопустимые XML-файлы

./js funcunit/open/phantomjs myapp/myapp_test.html -out myapp/docs/funcunit.xml 

проблема связана с недопустимым тегом «TestCase» внутри «» с набором тестов (ы) записи во время процесса. Все тесты выполняются, но в то время как процесс отчета просто добавляет только закрывающий «тег», это разбивает мою сборку, когда она запускается с нашим CI-сервером (jenkings + xunit plugin). Проблема возникает случайным образом !!! Содержимое сценария тестирования что-то вроде:

steal('funcunit') 
    // test modules 
    .then('myapp/modules/expression/builder/builder_test.js') 
    .then('myapp/modules/expression/factory/factory_test.js') 
    .then('myapp/modules/expression/variable_selector/variable_selector_test.js') 
    // etc ... 

Все тесты проходят, без ошибок внутри них, не ява исключения, ничего плохого для сломанных XML-файлов, за исключением.

Моя среда:

  • Ubuntu 12.04 64bit (проверено даже с 13.04 64bit)
  • PhantomJS 1.9.1 (для 64-битной платформы)
  • Дженкинс 1,505
  • XUnit 1.6.1

Любое решение?

+0

возможно дубликат [интеграции funcunit Дженкинс с результатами XUnit не работает] (http://stackoverflow.com/questions/17337102/jenkins-funcunit-integration-with-xunit-results-not-working) –

+0

Неа это не та же проблема, моя не связана с плохими письменными атрибутами для записей xml. У меня нет проблем с jenkins при анализе моего xml, когда он правильно сгенерирован, но иногда (даже с одним и тем же источником), если я повторяю процесс, выход является сломанным xml, как я уже упоминал .... это происходит случайным образом. – th3n3rd

ответ

0

Ну, учитывая детали при условии, это может быть один из следующих вопросов:

  • Есть управляющие символы во входном, что приводит к недопустимой XML
  • Виртуальная машина Java выбежал из памяти
  • Виртуальная машина Java выбежал из дискового пространства
  • Виртуальная машина Java выбежала процессов

Так как это происходит только intermitten Это, вероятно, утечка памяти. Удачи, охотясь за ней.

Список литературы

+0

- источник входного сигнала всегда один и тот же, если это управляющие символы, выход будет недействительным каждый раз, но это не так, поскольку он кажется случайным. - Он дает такие же результаты на моем локальном компьютере (такая же конфигурация, как и наш сервер CI) с 4gb-баром - у моей локальной машины 100GB + free - не так просто заканчивать процессы, если вы выполняете изолированную процедуру – th3n3rd

Смежные вопросы