Подтвердить что ты не робот

Capybara-webkit: автоматически сохранять скриншот при ошибке RSpec

Как я могу автоматически сохранить html и скриншот, когда тест не сработает с помощью capybara-webkit с Rspec? Как я могу выполнить обратный вызов, когда тест RSpec не работает.

Бонусные баллы: как я могу избежать следующей ошибки:

Capybara::Driver::Webkit::WebkitInvalidResponseError 

при выполнении этого кода:

require 'capybara/util/save_and_open_page'
path = "/#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}"
png = Capybara.save_and_open_page_path + "#{path}.png"
page.driver.render Rails.root.join(png)
4b9b3361

Ответ 2

Я написал для этого уникальный камень Capybara-Screenshot, https://github.com/mattheworiordan/capybara-screenshot

Он автоматически создаст снимки экрана при неудачных шагах RSpec или Cucumber.

Ответ 3

Capybara предоставляет функцию сохранения и открытия скрининга во время тестирования. Вам просто нужно позвонить в любом месте вашего теста:

save_and_open_screenshot

и он откроет изображение, как выглядит тест в этой точке. Нет необходимости в каких-либо дополнительных драгоценных камнях.

Capybara:: save_and_open_screenshot