如何从Config.js文件中读取功能(browsername)?

时间:2017-03-03 06:34:58

标签: javascript angularjs protractor

我想阅读配置文件中使用的浏览器,基于我需要在浏览器上执行某些操作,这可能吗? 我想从someTest.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

    }
};




1 个答案:

答案 0 :(得分:-1)

获取浏览器的名称很容易,但问题是许多浏览器的名称相同。

让我解释一下:

窗口对象中有一个名为Navigator的属性。

因此您可以像navigator.userAgent一样使用它,对于Chrome,它会将浏览器名称返回为

  

Mozilla / 5.0(Windows NT 6.1; Win64; x64)AppleWebKit / 537.36(KHTML,与Gecko一样)Chrome / 56.0.2924.87 Safari / 537.36

现在你看到了问题。

还有一个名为navigator.appName的属性,但很奇怪,

  

"网景"

是IE11,Chrome,Firefox和Safari的应用程序名称。

所以我的建议是不做浏览器检测,总是做特征检测