我正在做一個包含我需要迭代的表格的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