Embed URL


SSH clone URL

You can clone with HTTPS or SSH.

Download Gist

Cucumber and Capybara-Webkit automatic screenshots on failure

View capybara_webkit_screenshot_env.rb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
def screen_shot_and_save_page
require 'capybara/util/save_and_open_page'
path = "/#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}"
Capybara.save_page body, "#{path}.html"
page.driver.render Rails.root.join "#{Capybara.save_and_open_page_path}" "#{path}.png"
After do |scenario|
screen_shot_and_save_page if scenario.failed?
rescue Exception => e
puts "Snapshots not available for this environment.\n
Have you got gem 'capybara-webkit' in your Gemfile and have you enabled the javascript driver?"
View capybara_webkit_screenshot_env.rb
1 2 3 4
Then /take a snapshot(| and show me the page)/ do |show_me|
page.driver.render Rails.root.join("tmp/capybara/#{Time.now.strftime('%Y-%m-%d-%H-%M-%S')}.png")
Then %{show me the page} if show_me.present?

Please note that this has been superseded by the Capybara-screenshot gem at https://github.com/mattheworiordan/capybara-screenshot

How do i change the path of automatic screen shot on failure? currently it saves it in "/" but want to move it to working directory. or How do i turn off automatic screen shot? Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.