から未定義の復帰は、私が分度器要素(..)私は分度器のテストを書いて、私のtest.step.jsにしています別のファイル
element(by.css('...')).getText().then(function (text) {
expect(text).to.equal('expectedText');
});
をしたファイルこれは期待どおりに動作して渡します。
は、代わりに私がtest.page.jsファイルを作成し、そこにthis.field = element(by.css('...'));
を入れた後、私のステップファイルで
"use strict"
module.exports = function exampleTest() {
var TestPage = require("...");
var testPage = new TestPage;
...
test.Then(..., function (next) {
testPage.field.getText().then(function (text) {
expect(text).to.equal('expectedText');
});
});
}
を持っていたそのフィールドは未定義です。私はまた、ページファイルにgetText()を追加しようとしましたが、再び未定義になるか、未定義で 'then'を呼び出すことができないと言われます。
私の考えでは、これは最初の例とまったく同じですが、私はAngularまたはJavaScriptの専門家ではありません。
test.page.jsのようになります。誰かがこれが起こって、何私は再用のページファイル内のCSSセレクタを置くことができるように代わりに行う必要がありますされている理由にいくつかの光を当てることができます願って
"use strict";
module.exports = (function() {
function TestPage() {
this.field = element(by.css('...'));
}
return TestPage;
});
-つかいます。あなたは再利用可能な要素のロケータを定義し
おかげ
あなたは 'module.exports'の下でそれを定義しているあなたは、クラスを返すことができ
? test.page.jsの内容を追加できますか? – AdityaReddy
test.page.jsの内容を追加しました。私はそれがmodule.exportsの下でそれを定義する方法だと信じています。 – hello123
'HomePage'とは何ですか?あなたは 'TestPage'を返すべきです。また、 'var testPage = new TestPage();'を実行する必要があります。 – taguenizy