9

SauceLabs 提供了如何使用 WD 节点包编写远程测试的示例。我更喜欢 selenium-webdriver 包。有什么方法可以远程使用它吗?

4

1 回答 1

18

从 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();
于 2014-01-16T21:35:57.853 回答