0
Firefox와 크롬에 동일한 테스트 코드를 사용할 수 있습니까? I 예 코드 각 브라우저 드라이버Selenium WebDriver 브라우저 추상화
위한
VAR의 검색 창 = ffDriver.findElement를 테스트 코드의 블록을 반복하지 않고, 모든 브라우저 드라이버 코드의 일부를 실행할 수 추상화의 종류 (webdriver.By.name ('큐'));
각 브라우저 드라이버에 대해 반복됩니다.
var assert = require('assert'),
test = require('selenium-webdriver/testing'),
webdriver = require('selenium-webdriver'),
SeleniumServer = require('selenium-webdriver/remote').SeleniumServer;
var server = new SeleniumServer('selenium-server-standalone-2.39.0.jar', {
port: 4444
});
server.start();
var ffDriver = new webdriver.Builder()
.usingServer(server.address())
.withCapabilities(webdriver.Capabilities.firefox())
.build();
var chromeDriver = new webdriver.Builder()
.withCapabilities(webdriver.Capabilities.chrome())
.build();
test.describe('Google Search', function() {
test.it('should have a query box that you can type in ff', function() {
ffDriver.get('http://www.google.com');
var searchBox = ffDriver.findElement(webdriver.By.name('q'));
searchBox.sendKeys('webdriver');
searchBox.getAttribute('value').then(function (value) {
assert.equal(value, 'webdriver');
});
ffDriver.quit();
});
test.it('should have a query box that you can type in chrome', function() {
chromeDriver.get('http://www.google.com');
var searchBox = chromeDriver.findElement(webdriver.By.name('q'));
searchBox.sendKeys('webdriver');
searchBox.getAttribute('value').then(function (value) {
assert.equal(value, 'webdriver');
});
chromeDriver.quit();
});
});