Ruby 未定义的方法`包含文本';对于nil:NilClass(nomethoderor)

Ruby 未定义的方法`包含文本';对于nil:NilClass(nomethoderor),ruby,watir,Ruby,Watir,我在radide中使用Watir。我创建了一个类,用于检查我的网页上是否存在某些文本: 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:/)

我在radide中使用Watir。我创建了一个类,用于检查我的网页上是否存在某些文本:

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>'
更改守则-

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.new("Menu", "login")
Text_pos.new("Terms", "login",$ie)

在描述类之前,ie已初始化
ie=Watir::ie.new

$ie从何而来?--似乎您没有初始化ie:

ie = Watir::IE.new

我已经改变了一点代码和grt相同的错误,改变是在更新的问题