Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/366.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在Selenium WebDriver中读取浏览器状态栏文本_Javascript_Selenium Webdriver_Firefox3.6 - Fatal编程技术网

Javascript 如何在Selenium WebDriver中读取浏览器状态栏文本

Javascript 如何在Selenium WebDriver中读取浏览器状态栏文本,javascript,selenium-webdriver,firefox3.6,Javascript,Selenium Webdriver,Firefox3.6,有人知道如何使用SeleniumWebDriver读取FireFox浏览器状态栏文本吗?我想要它,因为我想知道我的整个网页是否完全加载 如果还有别的办法,请告诉我。调用任何JavaScript(将从Java程序返回Firefox状态栏文本) 另外,我如何验证我在网页上看到的webelement的存在 谢谢 我认为没有一种方法可以使用WebDriver读取FireFox状态栏 当您执行webdriver.get()操作时,它将等待“onload”事件触发,然后再将控制权返回到测试或脚本。但是,如果

有人知道如何使用SeleniumWebDriver读取FireFox浏览器状态栏文本吗?我想要它,因为我想知道我的整个网页是否完全加载

如果还有别的办法,请告诉我。调用任何JavaScript(将从Java程序返回Firefox状态栏文本)

另外,我如何验证我在网页上看到的webelement的存在


谢谢

我认为没有一种方法可以使用WebDriver读取FireFox状态栏

当您执行
webdriver.get()
操作时,它将等待“onload”事件触发,然后再将控制权返回到测试或脚本。但是,如果您的页面使用大量AJAX在页面上加载内容,并且在浏览器中仍然显示内容时触发“onload”事件,那么这可能还不够好

如果您需要确保这些页面已完全加载,那么解决方案是使用“等待”

您可以等待特定的元素:

Wait<WebDriver> wait = new WebDriverWait(driver, 10);
wait.until(visibilityOfElementLocated(By.id("target"))); 
Wait Wait=newwebdriverwait(驱动程序,10);
wait.until(通过.id(“目标”)定位元素的可见性);
见:

或者尝试等待Ajax完成任何挂起的请求:


请参阅:

Selenium 2具有隐式等待,这意味着只需使用
findElement
将等待目标元素出现并可见。@Dave,如果该元素没有出现怎么办?它会因为找不到那个元素而引发一些异常吗?你是对的。当我从谷歌收集搜索结果时,我面临着这个问题。现在我认为它正在使用Ajex,因此我的脚本失败了。现在我暂时使用simple
while循环
-
while(driver.findElements(By.linkText(“Google Home”)==null&&driver.findElements(By.linkText(“About Google”))==null&&driver.findElements(By.linkText(“广告程序”)==null){driver.manage().timeout().implicitlyWait(1,TimeUnit.SECONDS)}