【发布时间】:2014-02-05 21:19:11
【问题描述】:
SauceLabs 提供了如何使用 WD 节点包编写远程测试的示例。我更喜欢 selenium-webdriver 包。有什么方法可以远程使用它吗?
【问题讨论】:
标签: javascript selenium-webdriver saucelabs
SauceLabs 提供了如何使用 WD 节点包编写远程测试的示例。我更喜欢 selenium-webdriver 包。有什么方法可以远程使用它吗?
【问题讨论】:
标签: javascript selenium-webdriver saucelabs
从 selenium-webdriver 文档中获取示例代码,我们可以对其进行如下修改,以与 Sauce Labs 的 selenium cloud 对话。它假定您在 ENV vars 中获得了凭据,当然如果您想降低安全性,您可以对它们进行硬编码。
var webdriver = require('selenium-webdriver');
var sauce = 'http://ondemand.saucelabs.com:80/wd/hub';
var driver = new webdriver.Builder().
usingServer(sauce).
withCapabilities({
browserName: 'Chrome',
platform: 'Windows 2012',
name: 'Sample selenium-webdriver test',
username: process.env.SAUCE_USERNAME,
accessKey: process.env.SAUCE_ACCESS_KEY
}).
build();
driver.get('http://www.google.com');
driver.findElement(webdriver.By.name('q')).sendKeys('webdriver');
driver.findElement(webdriver.By.name('btnG')).click();
driver.wait(function() {
return driver.getTitle().then(function(title) {
return title === 'webdriver - Google Search';
});
}, 1000);
driver.quit();
【讨论】:
SELENIUM_BROWSER 的环境变量矩阵。同样,我建议使用SELENIUM_REMOTE_URL 而不是usingServer。这样您就可以在桌面上运行本地测试,而无需连接到 Sauce。