Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/google-chrome/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google chrome 具有相同浏览器的量角器多容量_Google Chrome_Jasmine_Protractor_Karma Runner - Fatal编程技术网

Google chrome 具有相同浏览器的量角器多容量

Google chrome 具有相同浏览器的量角器多容量,google-chrome,jasmine,protractor,karma-runner,Google Chrome,Jasmine,Protractor,Karma Runner,我正在运行具有“多电容”的量角器,如下所示: multiCapabilities : [ { name : 'ChromeIphone', logName : 'Chrome Iphone', browserName: 'chrome', chromeOptions: { 'args': ['user-agent=Mozilla/5.0 (iPhone; CPU iPhone OS 8_0_2 like Mac OS X) AppleWebKit/600.1.4 (K

我正在运行具有“多电容”的量角器,如下所示:

multiCapabilities : [
{  
  name : 'ChromeIphone',
  logName : 'Chrome Iphone',
  browserName: 'chrome',
  chromeOptions: {
    'args': ['user-agent=Mozilla/5.0 (iPhone; CPU iPhone OS 8_0_2 like Mac OS X) AppleWebKit/600.1.4 (KHTML, like Gecko) Version/8.0 Mobile/12A405 Safari/600.1.4']
  },
  mobileEmulationEnabled: true
},
{
  name : 'ChromeAndroid',
  logName : 'Chrome Android',
  platformName: 'android',
  browserName: 'chrome',
  newCommandTimeout: 60,
  chromeOptions: {
    'args': ['user-agent=Mozilla/5.0 (Linux; Android 4.4.4; Samsung Galaxy S4 - 4.4.4 - API 19 - 1080x1920 Build/KTU84P) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/33.0.0.0 Mobile Safari/537.36']
  }
}
],
这将导致启动两个web驱动程序实例。当其中一个失败时,我想知道我创建的报告中哪一个失败了

我尝试在“onPrepare”中使用以下函数

browser.getCapabilities().then(function (cap) {
  browser.name = (cap.browserName === undefined) ? (cap.caps_) ? cap.caps_.browserName : 'chrome' : cap.browserName;
  console.log('Current browser: ' + browser.name);
});
这对我来说是没用的,因为我总是使用“chrome”作为浏览器


在运行时是否有任何方式可以让我知道正在使用的用户代理?或者可以知道我的哪个“multiCapabilities”失败了?

您可以从已处理的配置文件中获取值:

onPrepare: function() {
    browser.getProcessedConfig().then(function(currentConfig) {
        console.log('Current browser: ' + currentConfig.capabilities.name);

        // if you want to see all the properties, you can use this
        // console.log(JSON.stringify(currentConfig.capabilities, null, 4));
    });
};

使用getCapabilities,您可以在运行时检索浏览器名称。你用的是哪种报告?在html截图报告中,它清楚地指出了失败的地方。我知道浏览器名称。。。然而,我们总是使用“chrome”作为浏览器,使用不同的用户代理来模拟android、iphone等。在创建的报告标题中,我希望“android”或“iphone”可见。我使用的报告器是‘dragor-jasmine2-screenshot-reporter’哦,好吧,我认为它们不被直接允许,因为它们只捕获浏览器的主体。我想你需要定制报告。如果你能找到解决办法,请告诉我。