我最近开始使用量角器进行e2e测试。我有一个组合框,其中列出了与用户键入的内容匹配的事件-因此,如果未找到此类事件,则列表为空。
我想做的是输入3个随机字符,如果组合框列表为空,请清除组合框,然后重试3个随机字符。应当重复此操作,直到找到非空列表。
我尝试使用简单的while循环来执行此操作,但是webdriverjs的异步特性意味着我陷入了无限循环。是否有可能以某种方式在循环内等待填充组合框?还是有其他更清洁的解决方案来解决这个问题?
码:
var query = element(by.model('searchStr'));
query.clear();
var letters = generateRandomLetters();
console.log(letters);
query.sendKeys(letters);
var eventList = element.all(by.repeater('result in results'));
eventList.count().then(function(count) {
if(count) {
//test continues here
}
});
声明一个递归调用自身的函数,直到满足您的条件为止。那应该是把戏。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句