我有大量在IE、Chrome和Firefox上工作的selenium测试脚本。我现在需要在Microsoft上运行它们,但是我有很多问题。主要问题是脚本执行得太快,不允许页面在进入下一个步骤之前完全加载。正因为如此,我的大多数脚本都失败了,因为它们找不到元素。我尝试过等待(explicit and implicit),但它们似乎不工作-脚本继续运行,而不是等待一个元素被显示。下面是我正在使用的等待代码的示例:
WebDriverWait wait = new WebDriverWait(driver, 30);
wait.until(ExpectedConditions.visibilityO
我想在DOMcontentLoad时使用selenium尽快找到元素
findElement如何才能执行不等待直到页面加载?
var webdriver = require('selenium-webdriver'),
By = webdriver.By,
until = webdriver.until
;(async function main(){
driver =await new webdriver.Builder().forBrowser('chrome').build()
await driver.get('
我正在使用selenium web驱动程序,我需要等待直到所有加载程序消失。我在仪表板页面上有12个小部件,我需要等待直到加载所有小部件。加载器显示在每个小部件上。我使用了以下两种方法,但都没有用,也没有错误,它只是传递到下一个语句。
new WebDriverWait(driver,60)
.until(ExpectedConditions.invisibilityOfElementLocated(By.xpath("//div[contains(text(),'Loader')]")));
WebDriverWait wait2 = new WebDriv
在selenium java程序中,我在类中创建了一个显式的等待条件。但无法在同一个类的不同方法中调用此等待对象。
下面是我写的代码:
public class AutomationScenarioWithCustomWaits {
public static WebDriverWait wait = new WebDriverWait(driver, 10);
public static void main(String[] args) throws IOException {
System.setProperty("webd
我们正在等待xpath标识的按钮可以用以下方式单击:
ExpectedConditions.elementToBeClickable()
然后在Selenium中执行单击此按钮。
然后我们得到一个错误:
another element would receive the click at position (x, y).
在页面加载期间,该按钮可能在页面上稍微移动,就像它旁边的其他按钮正在加载一样。
为什么Selenium会报告按钮是可点击的,然后无法单击它呢?我知道这就是这个条件的目的。这种执行发生在同一行中。
我们如何解决这个问题呢?
在页面中获取项目时有问题,该项目是在通过ajax或iframe加载页面后加载的,有没有办法为脚本创建一个条件直到项目出现?
为了举例说明我的问题,我做了以下测试:
Python:
from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By
from selenium.