[英]how to call the function in the specs - Protractor
我在模塊下編寫這個腳本:
var enter_search = function () { this.clickSearch = function (value) { element(by.id('searchbutton')).click(); }; this.waitElementFound = function (value) { var EC = protractor.ExpectedConditions; browser.wait(EC.presenceof(value), 35000); }; }; module.exports = new enter_search();
並在我的規范上調用此函數,我寫道:
var search = require('enter_search'); var loadtxt = element (by.id('text')); it('waits for the element', function(){ search.waitElementFound(loadtxt); search.clickSearch(); });
當我執行測試時,它給我一個錯誤未定義的函數。 不知道出了什么問題。 謝謝
要使用另一個文件中的函數,您應該導出該函數,然后在另一個文件中要求它。 這是一個例子 -
文件test.js
var search = require('./helper.js');
var loadtxt = element(by.id('text'));
it('waits for the element', function(){
search.waitElementFound(loadtxt);
});
文件helper.js
var waitElementFound = function (value) {
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(value), 35000);
};
module.exports = new waitElementFound(); //export the function
希望這可以幫助。
我已經解決了這個問題,我只需要在var x = function之外聲明我的變量..新手的掙扎:)無論如何,謝謝@Girish Sotur
var enter_search = function () { this.clickSearch = function (value) { element(by.id('searchbutton')).click(); }; this.waitElementFound = function (value) { var EC = protractor.ExpectedConditions; browser.wait(EC.presenceof(value), 35000); }; }; module.exports = new enter_search();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.