2016-03-24 24 views
1

我正在尝试为我在SauceLabs上运行的量程器测试编写自定义Jasmine记者。在SauceLabs中检索当前平台

我可以很容易地使用browser.getCapabilities()获得当前的浏览器,但我该如何获得该平台?

var multiCapabilities = [ 
    { 
     'browserName': 'chrome', 
     'platform': 'Windows 7', 
    }, 
    { 
     'browserName': 'chrome', 
     'platform': 'Linux', 
    } 
]; 

exports.config = { 
    framework: 'jasmine2', 
    onPrepare: function() { 
     browser.getCapabilities().then(function (capabilities) { 
      var browserName = capabilities.caps_.browserName 
      var browserVersion = capabilities.caps_.version 

      // How can I get the full platform here??? i.e OS name + version 
     }) 
    } 
}; 

谢谢!

+0

'capabilities.caps_.platform'?我看到我们用它来确定平台 - 它适合你吗? – alecxe

+0

它只是给我以下信息:**当我在Windows上时,XP **,当我在Mac OSX上时,** MAC **,以及当我在Linux上时,还有其他信息。我也需要操作系统版本,因为我可以在Windows 7,8,10等测试...基本上最好的是检索我提供的功能。 – foch

回答

1

这将返回您正在寻找的价值:

browser.getProcessedConfig().then(function (config) { 
     var platformName = config.capabilities.platform; 
     }); 

所有的功能都可以用这种方法,所以你可以使用browser.getProcessedConfig()为browserName和browserVersion为好。

+0

谢谢!这正是我所期待的!事实上,我在你的答案前几个小时就明白了自己的观点:D – foch