Module: Selenium::WebDriver::DriverExtensions::TakesScreenshot Private

Defined in:
lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Instance Method Summary collapse

Instance Method Details

#save_screenshot(png_path) ⇒ Object

Save a PNG screenshot to the given path


17
18
19
# File 'lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb', line 17

def save_screenshot(png_path)
  File.open(png_path, 'wb') { |f| f << screenshot_as(:png) }
end

#screenshot_as(format) ⇒ Object

Return a PNG screenshot in the given format as a string

Parameters:

  • format (:base64, :png)

Returns:

  • String screenshot


29
30
31
32
33
34
35
36
37
38
# File 'lib/selenium/webdriver/common/driver_extensions/takes_screenshot.rb', line 29

def screenshot_as(format)
  case format
  when :base64
    bridge.getScreenshot
  when :png
    bridge.getScreenshot.unpack("m")[0]
  else
    raise Error::UnsupportedOperationError, "unsupported format: #{format.inspect}"
  end
end