2016-07-13 7 views
2

分度器でスクリプトをテストしているブラウザを検出する方法はありますか?どこにでも見えました! configファイルでブラウザの名前を変更して同じスクリプトを実行するように、私は別のブラウザ仕様をすべて1つにまとめようとしています。私はすでにこれらを試しました。私の知る限り、あなたがcapabilitiesオブジェクト右を通じてブラウザを設定知っているよう分度器でブラウザを検出する

if (isFirefox)

if (browser === 'firefox')

答えて

3

あなたは今だけ、この変数をチェックし

browser.getCapabilities().then(function (capabilities) { 
    browserName = capabilities.get('browserName'); 
}); 

でテスト・スクリプトにここで設定したブラウザを得ることができます。

+0

私はこれを行い、 'if(browser.browserName === 'firefox'){ console.log( 'im here'); browser.switchTo()。alert()。accept(); } 'しかし、それはそのコード上で実行されます –

+0

' browser.browserName'は少なくともpromiseに設定されていますか? – KRONWALLED

+0

'browser.browserName'から' browser'を削除してすべてを修正しました。入力いただきありがとうございます。とても有難い。 –

1

capabilities browserNameに直接アクセスしてみましたか?私はこのコードをテストしていません:

capabilities: { 
    'browserName': (process.env.TEST_BROWSER_NAME || 'firefox') 
    , 'version': (process.env.TEST_BROWSER_VERSION || 'ANY') 
}, 

if(capabilities.browserName === 'firefox') { 
//do something here 
} 

multiCapabilities

multiCapabilities: [{ 
    'browserName': 'chrome' 
}, { 
    'browserName': 'firefox' 
}], 

の場合、あなたはこの

if(multiCapabilities[0].browserName === 'firefox') { 
//do something here 
} 
if(multiCapabilities[1].browserName === 'chrome') { 
//do something here 
} 

ノートのような何かを試みることができます!

+0

'browser.browserName'から' browser'を削除すると、@ KRONWALLEDの回答から修正されました。私はあなたもうまくいくはずだと思います。ありがとう。 –