Method: Selenium::WebDriver::TakesScreenshot#screenshot_as

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

#screenshot_as(format, full_page: false) ⇒ Object

Return a PNG screenshot in the given format as a string

Parameters:

  • format (:base64, :png)
  • full_page (Boolean) (defaults to: false)

    allows taking full page screenshots if supported

Returns:

  • String screenshot



52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'lib/selenium/webdriver/common/takes_screenshot.rb', line 52

def screenshot_as(format, full_page: false)
  if full_page && !respond_to?(:save_full_page_screenshot)
    raise Error::UnsupportedOperationError, "Full Page Screenshots are not supported for #{inspect}"
  end

  case format
  when :base64
    full_page ? full_screenshot : screenshot
  when :png
    screenshot_as(:base64, full_page: full_page).unpack1('m')
  else
    raise Error::UnsupportedOperationError, "unsupported format: #{format.inspect}"
  end
end