使用protractor-cucumber-framework,我试图在一个步骤中单击一百次按钮.但是,执行此操作将导致超时,默认值为5000ms超时值.我宁愿不使用以下方法更改此默认值:
var config = function() {
this.setDefaultTimeout(60*1000);
};
module.exports = config;
Run Code Online (Sandbox Code Playgroud)
这有效,但我宁愿为这一步设置超时,如下所示:
this.When(/^I click on the "([^"]*)" button$/, {timeout: 60*1000}, function(text, callback)
{
// Click the button 100 times
var button = element(by.partialButtonText('Widget'));
for(j = 0; j < i; j++) {
button.click();
}
callback();
});
Run Code Online (Sandbox Code Playgroud)
根据cucumber-js自述文件,这应该可行,但仍然会导致:
Error: Step timed out after 5000 milliseconds
at Timer.listOnTimeout (timer.js:92:15)
Run Code Online (Sandbox Code Playgroud)
关于为什么这不起作用的任何想法?
编辑:它确实有效.但是,我在错误的步骤中使用它.召唤click()一百次并不需要这么长时间.它在它之后的步骤超时:
this.Then(/^a new widget is created$/, {timeout: 60 * 1000}, function(callback) {
// …Run Code Online (Sandbox Code Playgroud)