场景是在框中从右向左滑动。 你会得到一些动态的结果。 并验证它们。
您可以识别 2 个元素的定位器 -
1 - 元素直到您想要到达的位置
2 - 该框中所有水平元素的通用 Xpath,然后运行以下代码以水平滚动。
public static void scrollTillElementHorizontally(By by, By allElements) {
if (driver.findElements(By) > 0 || driver.findElement(By).isDisplayed())
return;
int y = driver.findElement(allElements).getCenter().y;
int width = driver.manage().window().getSize().getWidth();
double startX = width * 0.80;
double endX = width * 0.20;
TouchAction action = new TouchAction(driver);
int i = 0;
while (i < 50) {
if (driver.findElements(By) > 0 || driver.findElement(By).isDisplayed())
break;
action.press(PointOption.point((int) startX, y)).waitAction(WaitOptions.waitOptions(Duration.ofSeconds(2)))
.moveTo(PointOption.point((int) endX, y)).release().perform();
i++;
}
}
如果您想在滚动时删除重复的元素,请将元素添加到 HashSet 中,这将在滚动时删除重复项。