2017-03-03 5 views
0

設定ファイルでどのブラウザが使用されているかを知りたい、ブラウザ上でいくつかの操作を行う必要があることに基づいて、それは可能ですか? someTest.jsファイルのconfigファイルからbrowserNameを取得したいとします。Config.jsファイルからどのように機能(browsername)を読むことができますか?

exports.config = { 
 
    allScriptsTimeout: 11000, 
 

 
    specs: [ 
 
     '../endtoendtests/demo.js', 
 
     '../endtoendtests/someTest.js' 
 
     
 
    ], 
 

 
    capabilities: { 
 
     'browserName': 'chrome' 
 
    }, 
 

 
    
 

 
    framework: 'jasmine', 
 

 
    jasmineNodeOpts: { 
 
     defaultTimeoutInterval: 30000 
 
    }, 
 
    onPrepare: function() { 
 
     browser.manage().window().maximize(); // maximize the browser before executing the feature files 
 

 
    } 
 
};

+0

これはあなたを助けるhttp://stackoverflow.com/questions/23872955/get-the-current-browser-name-in-protractor-test –

+0

これは多くの他の質問で答えられました。 - http://stackoverflow.com/questions/42414538/how-to-read-parameters-value-present-in-conf-js-file-of-protractor-in-specs/42418510#42418510 – AdityaReddy

+0

@KishanPatelありがとうございます。私のために働いています.. – Basil

答えて

-1

ブラウザの名前を取得するには簡単な作業ですが、問題は名前が多くのブラウザで同じであるということです。

私に説明してみましょう:

Navigatorと呼ばれるウィンドウオブジェクトのプロパティがあります。

したがって、あなたはnavigator.userAgentのようにそれを使用することができますし、クロムのためにそれが

のMozilla/5.0(Windows NTの6.1; Win64の、x64の)として、ブラウザの名前を返しますのAppleWebKit/537.36(KHTML、ヤモリなど)クローム/ 56.0.2924.87 Safari/537.36

ここで問題が表示されます。

プロパティもありますがnavigator.appNameと呼ばれるが、奇妙なことに、

"ネットスケープ"

はIE11、クロム、Firefox、およびSafariの両方のアプリケーション名です。

私のアドバイスはブラウザの検出を行わないので、いつもdo フィーチャー検出です。

関連する問題