排毒:“找不到UI元素。”尝试滚动FlatList时

时间:2019-02-25 15:06:13

标签: react-native e2e-testing detox

这是测试的代码:


//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();
  });

该应用每次都从头开始重新加载,这就是该元素不再可用的原因。看来我必须编写所有测试,以便每个测试都能开始完成。

1 个答案:

答案 0 :(得分:1)

在这些代码之前有一些代码如下:

beforeEach(async () => {
  await device.reloadReactNative();
});

该应用每次都从头开始重新加载,这就是该元素不再可用的原因。看来我必须编写所有测试,以便每个测试都能开始完成。