Я пытаюсь получить набор спецификаций интеграции, работающих на CI-сервере Ubuntu Server, используя безголовый гем, xvfb и capybara-webkit для безголового тестирования. На локальном устройстве разработчика все прекрасно работает, но после переноса на CI-сервер все становится интереснее.
В помощнике спецификаций есть немного обтекания кода: js включил спецификации интеграции в блок без заголовка, например:
config.around(:each, :js => true) do |example|
Headless.ly &example
end
Как я уже сказал, все это прекрасно работает на локальном устройстве разработчика. В CI, который использует безголовый гем и xvfb в качестве одного и того же пользователя для тестов для другого проекта, попытка запустить спецификации интеграции приводит к следующей ошибке, когда спецификации потребуется создать экземпляр браузера:
webkit_server: фатальная ошибка ввода-вывода: клиент убил
Я пытался выяснить, что может быть причиной этой ошибки, но даже не могу найти след, откуда она могла прийти, или какую-либо другую информацию, помогающую отладить проблему.
До сих пор я проверял / пробовал следующее:
- Пользователь CI определенно имеет права на запуск xvfb
- Запуск "Xvfb: 99 -ac", когда пользователь CI выдает одно предупреждение о не найденном шрифте, других проблем нет
У кого-нибудь есть идеи, что может быть причиной этого, или где я могу найти дополнительную информацию? Я довольно озадачен этим.
Спасибо!