Selenium Webdriver : wd.js에서 선택 상자 선택
8935 단어 wd셀레늄selenium-webdriver
Java라고 element에 대해 selectByVisibleText()를 사용하는 것으로 선택할 수 있는 것 같았지만, wd.js 의 API 매뉴얼을 보면 그런 것도 없고···라고 하는 느낌으로 조사하고 있으면 URL은 잊었습니다만 stackoverflow에서 python의 경우 방법을 듣고있는 사람이 있고, 답변에 xpath를 지정하면 OK라는 것을 찾아, 과연! 그렇다고 해서 wd.js에서도 해 보았더니 잘 할 수 있었습니다.
아래는 yahoo의 노선 검색으로, 22일의 13시 20분착의 전철을 조사하는 샘플 코드입니다.
"use strict";
var wd = require("wd");
require('colors');
var chai = require("chai");
var chaiAsPromised = require("chai-as-promised");
chai.use(chaiAsPromised);
var should = chai.should();
chaiAsPromised.transferPromiseness = wd.transferPromiseness;
describe("Select box test", function () {
this.timeout(300000);
var driver;
before(function () {
var serverConfig = {
host: 'localhost',
port: 4444
};
driver = wd.promiseChainRemote(serverConfig);
var desired = {
browserName: 'chrome',
platformName: 'mac',
};
return driver.init(desired);
});
after(function () {
return driver
.quit();
});
it("should get the url", function () {
return driver
.get('http://www.yahoo.co.jp')
.waitForElementByLinkText('路線')
.click()
.waitForElementByCssSelector('#sfrom')
.type('秋葉原')
.waitForElementByCssSelector('#sto')
.type('新宿')
.waitForElementByXPath('//*[@id="d"]/option[22]')
.click()
.waitForElementByXPath('//*[@id="hh"]/option[13]')
.click()
.waitForElementByXPath('//*[@id="mm"]/option[20]')
.click()
.waitForElementByXPath('//*[@id="tsArr"]')
.click()
.waitForElementById('searchModuleSubmit')
.click()
.waitForElementByClassName('title')
.text().should.eventually.equal('秋葉原→新宿')
.saveScreenshot('test_result.png');
});
});
실행 결과는 이렇게.
Reference
이 문제에 관하여(Selenium Webdriver : wd.js에서 선택 상자 선택), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/masami256/items/5b5faa452d31ce6393fa텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)