Неинициализированная константа Applitools::Utils::EyesSeleniumUtils::Appium (NameError)
Я получаю ошибку ниже при запуске сценария ruby applitool-
Erro - `mobile_device? ': Неинициализированная константа Applitools::Utils::EyesSeleniumUtils::Appium (NameError)
Ниже мой класс -
require 'eyes_selenium'
require 'selenium-webdriver'
# Initialize the eyes SDK and set your private API key.
eyes = Applitools::Selenium::Eyes.new
eyes.api_key = 'YOUR_API_KEY'
# Open a Chrome Browser.
driver = Selenium::WebDriver.for :chrome
begin
# Start the test and set the browser's viewport size to 800x600.
eyes.test(app_name: 'Hello World!', test_name: 'My first Selenium Ruby test!',
viewport_size: {width:800, height:600}, driver: driver) do
# Navigate the browser to the "hello world!" web-site.
driver.get 'https://applitools.com/helloworld'
# Visual checkpoint #1.
eyes.check_window 'Hello!'
# Click the "Click me!".
driver.find_element(:tag_name => 'button').click
# Visual checkpoint #2.
eyes.check_window 'Click!'
end
ensure
# Close the browser.
driver.quit
# If the test was aborted before eyes.close was called, ends the test as aborted.`
1 ответ
Кажется, как-то вы установили переменную $driver
, Предполагается, что он будет использоваться Appium для своих испытаний.
В качестве быстрого исправления попробуйте явно установить $ driver для nil для вашего теста (например, в начале скрипта), вот так:
$driver = nil
Обратите внимание, что знак "$" перед переменной важен, и $driver
это не то же самое, что driver
Кроме того, нет необходимости требовать 'selenium-webdriver', так как он будет автоматически запрашиваться eyes_selenium в качестве зависимости