如何解决有没有一种方法可以使用 Detox E2E 测试在 FlatList 中找到一个元素
因此,在测试我的应用程序时,我使用了一个数据集。由于数据集有很多条目,我使用 FlatList 来显示我的列表。创建列表后,我希望能够验证并点击某些列表项。下面,我附上了我尝试使用的代码,但它对我不起作用。如果有人对此有更好的想法,请告诉我。
我认为应该采取的方法。我想不出还有什么可以让 FlatList 滚动并找到我要找的项目。
let isNotFound = true;
while (isNotFound) {
try {
await waitFor(element(by.id((edit_details.index).toString()))).toBeVisible().withTimeout(2000)
isNotFound = false;
} catch (e) {
await element(by.id('credit_history_list')).swipe('up','slow',0.2)
}
}
await element(by.id((edit_details.index).toString())).tap();
它确实有助于滚动列表,并且在实际找到我要查找的条目时它会一直滚动。但是 .tap() 函数不起作用。相反,排毒会在下一行代码中继续进行。
有没有更好的方法来做到这一点?
提前致谢!
解决方法
Detox 的 whileElement()
API 听起来很准。
我认为您正在寻找的是:
const itemId = (edit_details.index).toString();
const listId = 'credit_history_list';
await waitFor(element(by.id(itemId))).toBeVisible()
.whileElement(by.id(listId))
.scroll(100,'down');
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。