0
JasmineとSelenium webdriverで簡単なUIテストを作成しようとしています。jasmineでセレンのwebdriverが動作しない
しかし、私はそれを動作させることができません。
- ノードv6.6.0を(グローバルモジュールとしてインストール)
- [email protected]
- [email protected]:以下は、私が使用している環境があります-3(node_modulesに設置)
- ChromeDriver 2.25.426935(は/ usr/local/binに)
- 最新グーグルクローム(バージョン54.0.2840.71(64ビット))
- のMac OS X 10.11.6(エル・キャピタン)
コードは(typescriptですで)非常に単純です:
import * as webdriver from 'selenium-webdriver';
let by = webdriver.By;
let until = webdriver.until;
describe("my suite",() => {
beforeEach(() => {
})
afterEach(() => {
})
it("should work",() => {
console.log("==========>");
let driver = new webdriver.Builder()
.forBrowser("chrome")
.build();
driver.get("https://www.google.com")
.then(s => {
return driver.getTitle();
})
.then(title => { console.log(title) })
console.log("<==========");
})
});
生成JSコード:
"use strict";
var webdriver = require('selenium-webdriver');
var by = webdriver.By;
var until = webdriver.until;
describe("my suite", function() {
beforeEach(function() {
});
afterEach(function() {
});
it("should work", function() {
console.log("==========>");
var driver = new webdriver.Builder()
.forBrowser("chrome")
.build();
driver.get("https://www.google.com")
.then(function (s) {
return driver.getTitle();
})
.then(function (title) { console.log(title); });
console.log("<==========");
});
});
同じコードが(ノードとの)スタンドアロンJSとして問題なく実行できます。
"use strict";
var webdriver = require('selenium-webdriver');
var by = webdriver.By;
var until = webdriver.until;
var driver = new webdriver.Builder()
.forBrowser("chrome")
.build();
driver.get("https://www.google.com").then(function (s) {
return driver.getTitle();
})
.then(function (title) { console.log(title); });
driver.quit();
いずれかが存在する場合、私は知りませんジャスミンがセレンで動作するために必要な設定。助けてください。
webdriverの初期化を "beforeEach"に移動することは役に立ちません。コードを動作させることができれば、 "beforeEach"に移動して "afterEach"で終了します。
エラーが表示されますか?または、typescriptによって生成されたコードが動作しませんか? – pagep
私は実際にそれを理解しました。 selenium-webdriverは非同期操作なので、ジャスミン/モカAPIの非同期フレーバーを使用する必要があります。 –