NameError: неопределенная локальная переменная или метод `watir 'для main: Object - PullRequest
0 голосов
/ 26 июня 2018

Я использую следующий код в irb:

irb(main):002:0>driver = watir::Browser.new :chrome

Но это дает мне эту ошибку:

NameError: undefined local variable or method `watir' for main:Object
        from (irb):2
        from C:/Ruby24-x64/bin/irb.cmd:19:in `<main>'

1 Ответ

0 голосов
/ 26 июня 2018

Похоже, вы пытаетесь получить доступ к вложенному классу, который должен ссылаться на имена переменных с заглавной буквы:

driver = Watir::Browser.new :chrome

Используя строчные буквы watir, вы ищете переменную watir определено в местном объеме.Например, вы можете хранить класс / модуль верхнего уровня в переменной:

watir = Watir

И затем вызывать код, как он есть, хотя это бессмысленно и является антипаттерном.

Используйте первую букву, как указано выше, и это должно сработать для вас.

Редактировать: как заметил Джастин Ко, похоже, что теперь он ищет правильный класс, хотя он должен быть доступен для файла.Добавьте это к началу, и все должно работать:

require 'watir'
...