我正在做一个包含我需要迭代的表格的e2e测试,“直到找到一个不会失败的单击它时。量角器:过滤器直到找到第一个有效元素
我尝试了用filter
,它是工作:
this.selectValidRow = function() {
return Rows.filter(function (row, idx) {
row.click();
showRowPage.click();
return errorMessage.isDisplayed().then(function (displayed) {
if (!displayed) {
rowsPage.click(); // go back to rows Page, all the rows
return true;
}
});
}).first().click();
};
这里的问题是,它是迭代所有可用行,而我只需要第一个是有效的(即不显示一个errorMessage
)。
我目前的方法存在的问题是,它耗时太长,因为我当前的表可能包含数百行。
是否有可能filter
(或不同的方法),并停止迭代时出现第一个有效的发生?或可能有人想出一个更好的方法?
但你怎么知道是一个有效的行?只要点击它,看到没有错误? – Hosar
是的,在我的情况下,我真的需要访问这些行中的一个页面,并且其中一些行会给出错误(因为它们各自的页面不存在或某些内容)。我只想要一种方法来找到一个不会给我一个错误的行。 – eLRuLL