SauceLabs дает примеры написания удаленных тестов с использованием пакета узлов WD. Я предпочитаю пакет selenium-webdriver. Есть ли способ использовать это удаленно вместо этого?
Как я могу использовать пакет selenium-webdriver с SauceLabs?
Ответы (1)
Взяв пример кода из документации selenium-webdriver, мы можем изменить его следующим образом, чтобы он взаимодействовал с облаком селена Sauce Labs. Предполагается, что у вас есть учетные данные в переменных ENV, конечно, вы можете жестко закодировать их, если хотите быть менее безопасными.
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();
person
Jonathan Lipps
schedule
16.01.2014
Каков синтаксис запуска тестов в нескольких браузерах? Массив вместо объекта в withCapabilities?
- person Steven; 28.05.2015
@Steven: вы должны использовать матрицу env var, передающую
SELENIUM_BROWSER
. Точно так же я предлагаю использовать SELENIUM_REMOTE_URL
вместо usingServer
. Таким образом, вы можете запускать локальные тесты на своем рабочем столе без подключения к Sauce.
- person Danielle Madeley; 14.07.2015