WebDriver在IE8上找不到页面元素,在firefox上能够找到

问题描述

部分代码:WebDriverdriver=newInternetExplorerDriver();driver.manage().timeouts().implicitlyWait(30,TimeUnit.SECONDS);WebElementusername=driver.findElement(By.name("j_username"));username.sendKeys(name);WebElementpassword=driver.findElement(By.name("j_password"));password.sendKeys(passwd);driver.findElement(By.name("Submit3")).click();出现下面异常:Exceptioninthread"main"org.openqa.selenium.NoSuchElementException:Unabletofindelementwithname==j_username(WARNING:Theserverdidnotprovideanystacktraceinformation)Commanddurationortimeout:30.24secondsFordocumentationonthiserror,pleasevisit:http://seleniumhq.org/exceptions/no_such_element.htmlBuildinfo:version:'2.25.0',revision:'17482',time:'2012-07-1821:09:54'Systeminfo:os.name:'WindowsXP',os.arch:'x86',os.version:'5.1',java.version:'1.6.0_05'Driverinfo:driver.version:RemoteWebDriverSessionID:cb2d2d07-f4d3-458a-9702-305aedf03b94atsun.reflect.NativeConstructorAccessorImpl.newInstance0(NativeMethod)atsun.reflect.NativeConstructorAccessorImpl.newInstance(UnknownSource)atsun.reflect.DelegatingConstructorAccessorImpl.newInstance(UnknownSource)atjava.lang.reflect.Constructor.newInstance(UnknownSource)atorg.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:188)atorg.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)atorg.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:498)atorg.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:268)atorg.openqa.selenium.remote.RemoteWebDriver.findElementByName(RemoteWebDriver.java:329)atorg.openqa.selenium.By$ByName.findElement(By.java:291)atorg.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:260)atTry.Login.Login(Login.java:109)atTry.Login.main(Login.java:51)但是将代码中的第一行换成:WebDriverdriver=newFirefoxDriver();则能够正常运行

解决方案

解决方案二:
楼主我也遇到这个问题了
解决方案三:
你页面的j_username这个元素肯定是这样写的<inputid="j_username"type="text"value="vvv">

driver.findElement(By.name("j_username"));其实就是调用以下的javascriptdocument.getElementsByName("j_username");

IE和firefox的javascript的引擎不一样,ie的场合找不到name的话会去找idfirefox就直接返回null了。所以把页面的id改成name就行了
解决方案四:
或者webdriver的代码改成WebElementusername=driver.findElement(By.id("j_username"));

时间: 2024-11-10 11:26:14

WebDriver在IE8上找不到页面元素,在firefox上能够找到的相关文章

请教:数组是引用类型,所以数组存在堆上,那数组中的元素存在栈上吗?

问题描述 请教:数组是引用类型,所以数组存在堆上,那数组中的元素存在栈上吗? 解决方案 解决方案二:数组中的元素可以通过地址找到,应该是在堆上解决方案三:当然在堆上,类是引用类型,类实例的某个字段是值类型,类实例的某个字段还是在堆上,数组的情况也一样解决方案四:建议看看装箱,拆箱解决方案五:数组里的对象没有装箱,拆箱问题.就是在堆上分配内存.c,c++的数组可以分配在栈上效率比c#好

页面已缓存,但是断网后在android webview 上显示找不到页面,刷新后正常

问题描述 页面已缓存,但是断网后在android webview 上显示找不到页面,刷新后正常 页面已缓存,但是断网后在android webview 上显示找不到页面,刷新后页面+正常显示 解决方案 说明你的webview在第一次加载的时候调用的数据不是缓存,你要设置其开始使用cookie缓存加载,断网时刚开始就不会找不到界面了

javascript-在不同的手机上测试pc端页面,用什么工具?

问题描述 在不同的手机上测试pc端页面,用什么工具? 要能模拟安卓和ios的,找了很多,opear mobile emulator和User-Agent Switcher for Chrome 汉化版 1.0.34都不好用 解决方案 网页的话用火狐就可以模拟各种比例的自适应屏幕了.

高分求:asp.net页面在不同机器上显示源码不一样,导致validator无效

问题描述 web发布以后,在本地使用没问题,可在远程(可能其他域)validator不起作用,下面是viewsource显示的结果,用windiff比较,那位知道是什么原因.本地source<spanid="RequiredFieldValidator3"style="color:Red;">*</span>远程source<spanid="RequiredFieldValidator3"style="co

IIS报在服务器上找不到脚本语言&#039;VBScript.encode&#039;错误怎么办

  这篇文章主要介绍了IIS报在服务器上找不到脚本语言'VBScript.encode'错误解决方法,其实这是一种服务器安全设置,一般虚拟主机都会禁用,需要的朋友可以参考下VBScript.Encode 这个组件经常被用来加密一些ASP的木马后门以达到免杀效果,还有一些程序的作者也会在ASP中使用加密以达到保护版权的目的. 偶然间发现,有套程序传到服务器上,程序报错了: 代码如下:Active Server Pages 错误 'ASP 0129' 在服务器上找不到脚本语言 'VBScript.e

frame页面框架设计,上左右结构

问题描述 frame页面框架设计,上左右结构 求一个frame页面框架设计,上左右结构,左边两个框架是上下,右边一个框架 解决方案 <html><body><table border='1' width=""100%"" height=""100%""><tr> <td ><iframe src=''></iframe></td>

ploadify上传控件问题-.NET页面多个Uploadify上传控件,上传失败!

问题描述 .NET页面多个Uploadify上传控件,上传失败! 今天遇到一个很棘手的问题,我一个页面中加了四个Uploadify上传控件.但是点击浏览按钮时选择文件后之后排在最后一个的上传控件可以正常上传文件.其他几个上传控件都选择文件之后均没有反应!也没有报什么js错误,不知道什么原因,有遇到类似此类问题的同行吗?急等大家的指点!!! 解决方案 用fiddler调试下,有没有上传的数据产生,表单名字是什么,等等,看看你是不是脚本写错了.

servlet-java关于Servlet里面跳转jsp页面出现找不到页面的问题,急求,大神,小弟跪求了!!

问题描述 java关于Servlet里面跳转jsp页面出现找不到页面的问题,急求,大神,小弟跪求了!! 问题:通过form表单跳转到servlet中处理事物完后,需要再跳转到另外一个jsp页面.我是用了很多种方法:都是页面找不到错误.使用过的方法: 1.response.sendRedirect("excelInport.jsp"); 2.request.getRequestDispatcher("excelInport.jsp").forward(request,

jsp跳转servlet找不到页面

问题描述 jsp跳转servlet找不到页面 servlet没有.class文件,我也不知道怎么回事,说要配置web.xml文件的就不要来了 ,因为是servlet3.0不需要配置,唉,直接上图吧,求大神指教 第一张是错误页面 第二张是跳转页面 接下来是servlet代码,这段代码没有生成.class文件 package myservlet; import java.io.IOException; import javax.servlet.ServletException; import jav