Я только что обновил capybara до 2.0, и все мои вызовы save_and_open_page возвращают html-страницу без стилизации. Он имеет ссылки на таблицы стилей в верхней части страницы. Когда я вернусь назад к capybara 1.3, стили снова работают. Кто-нибудь знает, как это исправить, и/или в чем проблема?
спасибо, Dave
Обновление 1.
хак:
Я нашел разумный способ обойти проблему, следуя ссылкам, рекомендованным simonmorley: Проблема Capybara Webkit который указывает на: capybara-screenshot
В нем используется скриншот capybara-screenshot, чтобы получить скриншот того, как выглядит страница. Когда вы объединяете его с save_and_open_page, который генерирует html, вы можете видеть, как он выглядит, и видеть HTML.
save_and_open_page
Capybara::Screenshot.screenshot_and_open_image
Если бы я мог работать Capybara::Screenshot.screenshot_and_save_page
, тогда я думаю, что у меня может быть решение (если название подразумевает действие, которое, как я думаю, оно делает). Однако, когда я пытаюсь, я получаю cannot load such file -- capybara/util/save_and_open_page
Обновление 2.
!! подождите, screenshot_and_open_image теперь не работает (изображение png не создается или не отображается).!!
Обновление 3.
Тестовое приложение:
Я создал тестовое приложение и разместил его на test_capybara_screenshot на Github.
Когда я запускаю это тестовое приложение в разработке, на странице появляется стильный стиль красного фона. Когда я запускаю тесты, единственное, что работает для меня, это save_and_open_page, за исключением того, что нет стиля.
Обратите внимание, что когда я запускаю какие-либо тесты, я получаю следующее предупреждение:
ПРЕДУПРЕЖДЕНИЕ: Nokogiri был создан против LibXML версии 2.7.8, но динамически загружал 2.7.3
Подробности теста rspec:
- На странице save_and_open_ отображается скучный белый фон (нет укладка).
- Сценарий screenshot_and_open_image возвращается с ошибкой:
Rack:: Драйвер test capybara не имеет возможности выводить снимки экрана. Пропуск.
Ошибка при открытии /~/Documents/experiments/test_capybara_screenshot/tmp/capybara/screenshot-2012-11-26-07-48-29.png с опциями {}: не найдено ни одного приложения для обработки '/~/Documents/эксперименты/test_capybara_screenshot/TMP/водосвинка/скриншот-2012-11-26-07-48-29.png
- Возврат к экрану screenshot_and_save_page:
Произошла ошибка при перехвате
LoadError: невозможно загрузить такой файл - capybara/util/save_and_open_page произошло в ~/.rvm/gems/[email protected]/gems/activesupport-3.2.6/lib/active_support/dependencies.rb: 251: в `require '