Я пытаюсь получить доступ к определению поворота =, и моя IDE (RubyMine) показывает, что в этой строке указан правильный путь, и я могу прочитать файл rotatable.rb, в котором он находится.

page.driver.browser.rotation = :portrait

Я тоже пробовал

Capybara.current_session.driver.browser.rotation = :portrait

Но когда он запускается, я получаю эту ошибку

undefined method `rotation=' for #<Selenium::WebDriver::Chrome::Driver:0x00007fc80a90b210> (NoMethodError)

Я также проверил документы здесь. https://www.rubydoc.info/gems/selenium- webdriver / Selenium / WebDriver / DriverExtensions / Rotatable

Какие-нибудь советы по поводу того, что я делаю неправильно?

0
chasethesunnn 11 Сен 2018 в 10:12

1 ответ

Лучший ответ

Единственный драйвер, в который включен модуль Rotatable, - это удаленный драйвер (Selenium :: WebDriver :: Remote :: Driver) - https://github.com/SeleniumHQ/selenium/blob/master/rb/lib/selenium/webdriver/remote/ driver.rb # L31 - так что это единственный метод rotation=, поддерживаемый. Вы используете локальный драйвер хрома (Selenium :: WebDriver :: Chrome :: Driver), где метод не поддержано / реализовано.

1
Thomas Walpole 11 Сен 2018 в 15:34