量角器:在我的测试中正确使用waitReady.js文件

时间:2016-02-21 06:45:15

标签: javascript node.js jasmine protractor

我们在整个测试套件中广泛使用browser.wait。在针对不同场景管理不同的超时时,它变得令人头疼。我遇到了waitReady函数(https://gist.github.com/elgalu/2939aad2b2e31418c1bb),但我无法在代码中使用它。 该目录看起来像:(所有文件彼此相邻)

├── conf.js
├── main.js
├── waitReady.js

Main.js --->包含所有描述和阻止

    require('./waitReady.js');
    describe(...){
    it{
    code...
expect(element.waitReady()).toBeTruthy();
    };
    });

由于某种原因,代码没有找到该函数,我的代码仍然没有定义函数未定义错误。我需要在某处初始化吗?

2 个答案:

答案 0 :(得分:4)

将导入放入量角器配置中的onPrepare()

onPrepare: function () {
    require('./waitReady.js');
},

答案 1 :(得分:3)

我毫不怀疑Alecxe会回答这个问题:)

管理超时长度的替代解决方案(我发现它很有用)是将默认超时长度添加到basePage或onPrepare。为此,我使用T恤尺码......例如:

this.timeout = {
    's' : 500,
    'm'  : 1000,
    'l'  : 5000,
    'xl'  : 10000
}; 

然后打电话给:

browser.wait(someThingToWaitFor(), this.timeout.xl);