51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3080|回复: 10
打印 上一主题 下一主题

selenium脚本用firefox能跑,ie出错提示找不到元素

[复制链接]
  • TA的每日心情
    难过
    2014-12-3 13:36
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]测试连长

    跳转到指定楼层
    1#
    发表于 2014-10-9 09:24:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    又来求各位大神帮忙了。RT,代码除了把
            driver = new FirefoxDriver();
                         改成
            System.setProperty("webdriver.ie.driver", "C:\\Program Files\\seleniumPackage\\IEDriverServer.exe");
            driver = new InternetExplorerDriver();
    以外,没其他区别了
    代码运行到寻找元素 driver.findElement(By.id("username")).clear(); 时就会报错

    机器配置如下:win7旗舰版,32位系统,IE11
                         
    报错提示:
    org.openqa.selenium.NoSuchWindowException: Unable to find element on closed window (WARNING: The server did not provide any stacktrace information)
    Command duration or timeout: 17 milliseconds
    Build info: version: '2.40.0', revision: 'fbe29a9', time: '2014-02-19 20:54:28'
    System info: host: 'WIN-FDVNPHLJRCS', ip: '192.168.0.134', os.name: 'Windows 7', os.arch: 'x86', os.version: '6.1', java.version: '1.7.0_67'
    Session ID: ee7408fa-bfa3-4f8a-8c17-029589fb93a8
    Driver info: org.openqa.selenium.ie.InternetExplorerDriver
    Capabilities [{platform=WINDOWS, javascriptEnabled=true, elementScrollBehavior=0, ignoreZoomSetting=false, enablePersistentHover=true, ie.ensureCleanSession=false, browserName=internet explorer, enableElementCacheCleanup=true, unexpectedAlertBehaviour=dismiss, version=11, ie.usePerProcessProxy=false, cssSelectorsEnabled=true, ignoreProtectedModeSettings=false, requireWindowFocus=false, handlesAlerts=true, initialBrowserUrl=http://localhost:6568/, ie.forceCreateProcessApi=false, nativeEvents=true, browserAttachTimeout=0, ie.browserCommandLineSwitches=, takesScreenshot=true}]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
        at java.lang.reflect.Constructor.newInstance(Unknown Source)
        at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:193)
        at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:145)
        at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:573)
        at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:326)
        at org.openqa.selenium.remote.RemoteWebDriver.findElementByXPath(RemoteWebDriver.java:423)
        at org.openqa.selenium.By$ByXPath.findElement(By.java:357)
        at org.openqa.selenium.remote.RemoteWebDriver.findElement(RemoteWebDriver.java:318)
        at com.example.tests.NewLogin2.testNewLogin2(NewLogin2.java:34)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
        at java.lang.reflect.Method.invoke(Unknown Source)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
        at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
        at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
        at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
        at org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
        at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
        at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
        at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
        at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
        at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
        at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
        at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
        at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
        at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
        at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    2#
    发表于 2014-10-9 10:07:22 | 只看该作者
    错误信息是你那个ie driver 打开的窗口已经被关闭了,元素找不到。。。。
    你IE的窗口打开到指定的页面了吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2014-12-3 13:36
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]测试连长

    3#
     楼主| 发表于 2014-10-9 10:26:25 | 只看该作者
    joykao 发表于 2014-10-9 10:07
    错误信息是你那个ie driver 打开的窗口已经被关闭了,元素找不到。。。。
    你IE的窗口打开到指定的页面了吗 ...

    URL是没错的,运行后,它弹出IE窗口后我就没做什么过了。
    我试了最简单的代码:
                    driver.get("http://www.baidu.com");
                    driver.findElement(By.id("kw")).sendKeys("123");
    也是报这个错的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    4#
    发表于 2014-10-9 15:24:00 | 只看该作者
    amy_9291 发表于 2014-10-9 10:26
    URL是没错的,运行后,它弹出IE窗口后我就没做什么过了。
    我试了最简单的代码:
                    drive ...

    方便了解下你的webdriver 版本吗?还有IE driver server的版本
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2014-12-3 13:36
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]测试连长

    5#
     楼主| 发表于 2014-10-9 15:34:18 | 只看该作者
    joykao 发表于 2014-10-9 15:24
    方便了解下你的webdriver 版本吗?还有IE driver server的版本

    selenium-server-standalone-2.40.0
    selenium-java-2.40.0
    IEDriverServer_Win32_2.42.0.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    6#
    发表于 2014-10-10 15:35:07 | 只看该作者
    amy_9291 发表于 2014-10-9 15:34
    selenium-server-standalone-2.40.0
    selenium-java-2.40.0
    IEDriverServer_Win32_2.42.0.

    selenium-server-standalone-2.40.0
    selenium-java-2.40.0
    把这个更新到最新吧。。。还有server可以不要的哇。。吧selenium-java下所有的jar包添加就可以了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2014-10-13 14:18:55 | 只看该作者
    新手报道喽,大家欢迎哟
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2014-12-3 13:36
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]测试连长

    8#
     楼主| 发表于 2014-10-16 09:25:05 | 只看该作者
    joykao 发表于 2014-10-10 15:35
    selenium-server-standalone-2.40.0
    selenium-java-2.40.0
    把这个更新到最新吧。。。还有server可以不 ...

    更新到2.43.1了,还是不行哇。。。run as junit后,等IE刚打开的时候,马上切换到eclipse的页面,脚本就能跑完了,不会报错了。。。要是不去切换,立马找不到元素
    还有啊,我同学的32位机子上就行的,难道跟机子有关??
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    9#
    发表于 2014-10-16 09:53:53 | 只看该作者
    amy_9291 发表于 2014-10-16 09:25
    更新到2.43.1了,还是不行哇。。。run as junit后,等IE刚打开的时候,马上切换到eclipse的页面,脚本就 ...

    在找不到元素的代码之前加上等待。。。。不知道是不是执行过快,如果是的话加上
    Thread.Sleep(3000)
    其他浏览器上都是好得哇?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2014-10-16 15:44:14 | 只看该作者
    楼上解决上面问题了吧,我现在报的问题和你一样
    用的版本信息也都一样的
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2014-12-3 13:36
  • 签到天数: 11 天

    连续签到: 3 天

    [LV.3]测试连长

    11#
     楼主| 发表于 2014-10-20 11:09:20 | 只看该作者
    joykao 发表于 2014-10-16 09:53
    在找不到元素的代码之前加上等待。。。。不知道是不是执行过快,如果是的话加上
    Thread.Sleep(3 ...

    我写了等待的代码的。。。&&  firefox上是没问题的
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-27 16:13 , Processed in 0.064311 second(s), 22 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表