Selenium WebDriver 没有点击第一个按钮
Selenium WebDriver is not clicking on first button
我有一个包含 5 个 'Buy' 按钮的列表。 Selenium WebDriver 没有点击第一个 'Buy' 按钮,而是点击剩下的 4 个按钮。 运行 一个 println,它显示了 WebDriver 找到的所有 5 个购买按钮。
我试过切换列表中按钮的顺序,我试过调试它,我也包括了显式等待,但没有任何帮助。有人有线索吗?
我的代码如下:
for (int i = 0; i < allProductsOnsite.size(); i ++) {
//System.out.println(allProductsOnsite.get(i).getText());
if (prodsToBuy.contains(allProductsOnsite.get(i).getText())) {
System.out.println("Found -------" + allProductsOnsite.get(i).getText() );
WebDriverWait wt = new WebDriverWait(driver, 15);
wt.until(ExpectedConditions.visibilityOfAllElements(allProductsOnsite));
allBuyButtons.get(i).click();
}
}
尝试使用JavascriptExecutor点击
WebElement element= driver.findElement(By.xpath(".//*[@id='loginButton']/div"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", element);
如果需要,在此代码之前也使用一些等待
希望这对您有所帮助:)
我有一个包含 5 个 'Buy' 按钮的列表。 Selenium WebDriver 没有点击第一个 'Buy' 按钮,而是点击剩下的 4 个按钮。 运行 一个 println,它显示了 WebDriver 找到的所有 5 个购买按钮。
我试过切换列表中按钮的顺序,我试过调试它,我也包括了显式等待,但没有任何帮助。有人有线索吗?
我的代码如下:
for (int i = 0; i < allProductsOnsite.size(); i ++) {
//System.out.println(allProductsOnsite.get(i).getText());
if (prodsToBuy.contains(allProductsOnsite.get(i).getText())) {
System.out.println("Found -------" + allProductsOnsite.get(i).getText() );
WebDriverWait wt = new WebDriverWait(driver, 15);
wt.until(ExpectedConditions.visibilityOfAllElements(allProductsOnsite));
allBuyButtons.get(i).click();
}
}
尝试使用JavascriptExecutor点击
WebElement element= driver.findElement(By.xpath(".//*[@id='loginButton']/div"));
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].click();", element);
如果需要,在此代码之前也使用一些等待
希望这对您有所帮助:)