Node.js selenium webdriver - 在测试中获取浏览器功能
Node.js selenium webdriver - Get browser capabilities inside test?
我在node上使用selenium webdriver.js(目前通过webdriverio,但我不介意切换到webdriverjs或wd(。
我在不同的浏览器上运行一些测试,并希望保存每个测试的结果以及有关浏览器的信息,例如:
- 测试 1 - 铬 - 199 个断言,0 个失败,0 个跳过
- 测试 1 - IE9 - 199 个断言,0 个失败,0 个跳过
- 等。。
如何从测试中获取"所需功能"对象?
或者我怎样才能通过测试才能使用它?
编辑
我发现browser.desiredCapabilities
返回请求的功能对象,但现在我意识到我实际上需要使用"实际功能"(例如,如果我在只有 IE11 的计算机上请求 IE8,我会得到 IE11,但 desiredCapabilities 对象显示版本=8(。
我正在寻找一种方法来获取实际使用的浏览器功能,如Selenium wiki上记录的那样:
如果会话无法支持在 所需的功能,不会抛出错误;只读功能 返回指示会话功能的对象 实际上支持。
使用
WebDriverJS(你提到你可以切换到它(,你可以使用 getCapabilities
:
browser.getCapabilities().then(function (caps) {
console.log(caps);
});
上面的代码只会转储功能,但您应该使用 Capabilities
类的方法检查值。例如:
browser.getCapabilities().then(function (caps) {
console.log(caps.get("browserName"), caps.get("version"));
});
相关文章:
- 如何获取浏览器的子窗口数
- Javascript:获取浏览器's选定的麦克风名称
- 如何获取浏览器's”;背面“;按钮以清除d3.js可视化的先前状态
- 使用javascript获取浏览器历史记录,并通过php打印
- 我们可以使用Javascript获取浏览器历史记录吗
- 如何获取浏览器发布日期
- 如何获取浏览器不支持的 CSS 属性的值
- 原生 JavaScript 在调整大小后获取浏览器宽度,然后运行一个函数
- 如何在 Javascript 中获取浏览器的时区字符串
- 如何在 jQuery 中获取浏览器滚动位置
- 在 C# 中以编程方式设置和获取浏览器窗口坐标值 (x,y)
- Node.js selenium webdriver - 在测试中获取浏览器功能
- MVC3 剃须刀在视图中获取浏览器屏幕宽度和高度
- 从两级深度 iframe 获取浏览器 URL
- 如何使用javascript获取浏览器加载的文件列表
- 如何获取浏览器的区域设置度量单位
- 使用jQuery获取浏览器URL
- 获取浏览器信息的任何其他方式,而不是检索UserAgent
- 使用javascript获取浏览器下载路径
- 从iframes中获取浏览器窗口的可用高度