我一直在编写自动测试脚本,以控制房地产列表页面的滚动功能是否正常工作,以及另一种在重定向至该页面后控制窗口位置的测试。这里的主要问题是,我无法弄清楚如何使用Selenium和Appium工具在自动化的IOS Native App测试中获得动态的可滚动ListView元素(类似于WebView中的框架)的位置。
我尝试过: -通过Appium库使用driver.manage()。window()。getPosition()函数(即使它是为WebView指定的),并得到(0,0)。 -检查滚动后任何移动元素的y值是否已更改。
//pos1 will be acquired here by the described function
wait.until(ExpectedConditions.presenceOfElementLocated(By.className("SCUIElementTypeImage")));
wait.until(ExpectedConditions.visibilityOf(iOSDriver.findElement(By.name("Listings"))))
touchAction.longPress(bottomPoint).waitAction(WaitOptions.waitOptions(Duration.ofMillis(1000))).moveTo(topPoint).release().preform();
//pos2 will be acquired here by the described function
Assert.assertTrue(pos2.y>pos1.y);
预期结果: -该函数将在向下滚动之前返回(a,b)。 -向下滚动50个像素后,该函数将返回(a,b + 50)。