2017-12-11 16 views
0

私はセレングリッドを勉強しようとしていますが、チュートリアルに従っていますが、NoMethodError:{browserName =>:firefox、:version => nil}のプライベートメソッド `browser_name 'が呼び出されました

NoMethodError:このエラーだためというプライベートメソッド `BROWSER_NAMEを」{:browserName =>:Firefoxは、:バージョン=> nilの}:

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 
:ハッシュここ

はenv.rbファイルです

ありがとうございます、あなたの助けに感謝します。

答えて

2

watir-webdriverは廃止され、最新のバージョンのFirefoxでは動作しません。 watirの最新バージョンに更新してください。

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

おかげで多くのことを、その行が現在取り組んでいるが、senarionのように最初は動作しませんでした:与えられた(/^A

もワチールの最新バージョンで、あなただけ行うことができる必要がありますユーザーはアマゾン$ /)do @ browser.goto "http://www.amazon.com" end – Majid

+0

"機能しません"とはどういう意味ですか?エラーは何ですか?あなたはgeckodriverをダウンロードしましたか? – titusfortner

+0

新しい質問をしてください。ここで別の質問のコメントでそれをやっているのは、実際には面倒で、最適ではありません。 –

関連する問題