如何执行Casper JS TestSuite,每个TestCase之间有一些延迟?

时间:2015-08-10 09:17:49

标签: casperjs slimerjs

我有一个basic_function.js脚本文件,其中包含一些验证和常用操作。就像我下面说的那样是验证部分(例子)

exports.validation = function (casper) {
return casper
.then(function () {
    this.exists('1st Element ID',"Log Out button exist");
    this.exists('2nd Element ID', "Shareable link exists");
    });
};

仅通过调用

在每个脚本中使用
functions.validation (casper);

当我开始执行测试套件(包含大约10-12个测试脚本)时,有些时候前几个脚本会通过验证部分传递,而有些脚本会因验证部分而失败,而在日志中会打印出

找不到可共享链接的匹配元素

并在下一个脚本中传递。 我不知道为什么它表现得像这样

1 个答案:

答案 0 :(得分:0)

不是100%确定这是否是您要求的但我必须在CasperJS脚本中添加一些等待时间以避免失败。这有两种方法:

casper.then(function(){
    this.wait(1000, function(){
        test.assertTitle('The Title', 'It all works');
    });
});

或者您可以等待特定元素出现在您的页面上,然后执行您的断言等。

casper.then(function(){
    casper.waitUntilVisible('#someID', function(){
        test.assertTitle('The Title', 'It all works');
    });
});

Here's the documentation for you to check out