这是测试的代码:
//navigates to the new screen:
it("should show myFlatListScreen after tap", async () => {
await element(by.id("navigationButton")).tap();
await waitFor(element(by.id("myFlatListScreen"))).toBeVisible();
});
//Passes without issue:
it("FlatList should be visible", async () => {
await waitFor(element(by.id("myFlatList"))).toBeVisible();
});
//Fails with: "Cannot find UI element." error
it("FlatList should scroll", async () => {
await element(by.id('myFlatList')).scroll(100, 'down');
});
该元素如何通过toBeVisible()
测试,然后滚动不存在?
编辑:我弄清楚了。在这些看起来像这样的代码之前:
beforeEach(async () => {
await device.reloadReactNative();
});
该应用程序每次都从一开始就重新加载,这就是为什么该元素不再可用的原因。看来我必须编写所有测试,所以它们每次都开始完成。
看起来像这样的代码:
beforeEach(async () => {
await device.reloadReactNative();
});
该应用程序每次都从一开始就重新加载,这就是为什么该元素不再可用的原因。看来我必须编写所有测试,所以它们每次都开始完成。