IEdriver能打开ie浏览器,取不到元素,怎么解?
其他浏览器可以,但是IE浏览器取不到元素,代码如下,求高人指点加个等待看下,也许没有加载完。。。。还有可以访问http://www.baidu.com,https么不是security的就尽量不加 可能是网速过慢导致的 加等待吧
http://www.mytesting.cn/2015/auto_0716/30.html
去官网查下资料吧这里有 fanq工具 你的定位没有啥问题,你出现的问题有可能是 1.等待时间问题,可以建议你用webdriver的显示等待, 参考http://www.webdriver.org/article-28-1.html 里面的方法一吧。 2. 当然也可以用隐式等待, 代码:
WebDriver dr = new FirefoxDriver();
//webdriver的隐式等待,通过设置隐式等待将每次寻找元素的等待时间设置为5秒,如果5秒之内找不到则抛出element not found异常
dr.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS);
dr.get("http://www.baidu.com");
3. 还有可能出现了frame, 这是百度首页诡异的问题,用webdriver打开有时候(情况比较少)会出现frame, 那这个时候你就需要切换到frame里面去了。代码:
dr.get("http://www.baidu.com");
WebDriverWait wait = new WebDriverWait(dr, 5);
try{
wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//iframe")));
dr.switchTo().frame(dr.findElement(By.xpath("//iframe")));
}
catch (Exception e){
e.printStackTrace();
}
这样管frame有没有出现都ok了.
百度首页的frame截图
C:\Users\Alex\Documents\webdriver_org\New folder\1.png
zzhengjian 发表于 2015-8-6 22:43
你的定位没有啥问题,你出现的问题有可能是 1.等待时间问题,可以建议你用webdriver的显示等待, 参考http:/ ...
谢谢:handshake 我也遇到同样的问题,chrome就可以运行,ieexplorer就无法运行,我是有等待时间的
页:
[1]