/ / undefined метод `contains_text 'для nil: NilClass (NoMethodError) - ruby, watir

невизначений метод `contains_text 'для нуля: NilClass (NoMethodError) - ruby, watir

Я використовую Watir в середовищі RadRails IDE. Я створюю клас, який перевіряє наявність тексту на моїй веб-сторінці:

class Text

def initialize(text, object)
@text   = text
@object = object

if $ie.contains_text(@text)
puts "Test for" + @object + "failed"
puts $ie.link(:text => /Exception:/)

h = $ie.link(:text => /Exception:/)
r.addtoReport(testReport, "check" + @object, "FAILED", h.text)
else
puts("Test for" + @object + "passed")

r.addtoReport(
testReport,
"check" + @object,
"PASSED",
"Test for" + @object + "passed"
)
end
end

end

Але коли я намагаюся виконати код у своєму тесті, я отримую таку помилку -

BPM/Company.rb:38:in `initialize": undefined method `contains_text" for nil:NilClass (NoMethodError)
from BPM/Company.rb:79:in `new"
from BPM/Company.rb:79:in `<main>"

Я викликаю клас за цією командою -

Text.new("Menu", "login")

Зміни в коді -

def initialize(text, object, ie)
@text   = text
@object = object
@ie=ie
if @ie.contains_text(@text)
puts "Test for" + @object + "failed"
puts @ie.link(:text => /Exception:/)

Я викликаю клас за цією командою -

Text_pos.new("Terms", "login",$ie)

Перед описом класів тобто ініціалізується ie=Watir::IE.new

Відповіді:

1 для відповіді № 1

Звідки походить $ ie? - схоже, ви не ініціалізували, тобто:

ie = Watir::IE.new