NoMethodError: 私有方法 'browser_name' 调用 {:browserName=>:firefox, :version=>nil}:Hash



我正在尝试学习硒网格,我遵循了一个教程,但是当我尝试运行我的功能时,我会遇到此错误:

nomethoderror:私有方法`browser_name'呼叫{:browsername =>:firefox,:version => nil}:hash

这是Env.RB文件:

   require 'watir-webdriver'
require 'cucumber'
def browser_path
  (ENV['BPATH'])
end
def browser_name
  (ENV['BROWSER'] ||= 'firefox').downcase.to_sym
end
def environment
  (ENV['ENV'] ||= 'grid').downcase.to_sym
end
def browser_version
  (ENV['VER'])
end
Before do
  def assert_it message, &block
    begin
      if (block.call)
        puts "Assertion PASSED for #{message}"
      else
        puts "Assertion FAILED for #{message}"
        fail('Test Failure on assertion')
      end
    rescue => e
      puts "Assertion FAILED for #{message} with exception '#{e}'"
      fail('Test Failure on assertion')
    end
  end
  if browser_path != nil
    Selenium::WebDriver::Firefox.path= "#{browser_path}"
  end
  if environment == :grid
    @browser = Watir::Browser.new(:remote, :url=>"http://10.196.60.38:4444/wd/hub", :desired_capabilities=> {browserName: browser_name,version: browser_version})
    @browser.window.maximize
  else
    @browser = Watir::Browser.new browser_name
    @browser.window.maximize
  end
end
After do
  @browser.close
end

谢谢,感谢您的帮助。

watir-webdriver已弃用,不会与最新版本的firefox一起使用。请更新到最新版本的watir

也有最新版本的watir,您应该可以做:

Watir::Browser.new(browser_name, url: "http://10.196.60.38:4444/wd/hub", version: browser_version

最新更新