51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5029|回复: 5
打印 上一主题 下一主题

求助!如何解决Selenium+eclipse下关于timeout的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-4-26 11:37:03 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
源程序:
package com.example;

import com.thoughtworks.selenium.*;
import org.junit.After;
import org.junit.Before;
import org.junit.Test;

public class test0426 extends SeleneseTestCase {
        @Before
        public void setUp() throws Exception {
                selenium = new DefaultSelenium("localhost", 4444, "*iexplore", "http://www.baidu.com/");
                selenium.start();
        }

        @Test
        public void testTest0426() throws Exception {
                selenium.open("/");
                selenium.type("id=kw", "sdgfssfs");
                selenium.click("id=su");
                selenium.waitForPageToLoad("30000");
                verifyTrue(selenium.isTextPresent("SPBC887.17.br"));
                selenium.click("link=SPBC887.17.br");
        }

        @After
        public void tearDown() throws Exception {
                selenium.stop();
        }
}


执行后提示错误:
com.thoughtworks.selenium.SeleniumException: Timed out after 30000ms
如果注释selenium.waitForPageToLoad("30000")后执行提示错误:
com.thoughtworks.selenium.SeleniumException: ERROR: Command execution failure. Please search the forum at http://clearspace.openqa.org for error details from the log window.  The error message is: 没有权限
       
本人新手,刚接触selenium,请各位高手指点下,谢谢!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-4-26 13:51:30 | 只看该作者
本帖最后由 sweetyxu 于 2012-4-26 15:45 编辑

selenium.waitForPageToLoad("30000")
比较粗糙的修改方式是在eclipse里把这话改成Thread.sleep(1000);试试

以下是引用的别人的文章:
有人说selenium server的JAR包里面core/scripts/selenium-browserbot.js存在BUG,需要修改一下,其实修改了之后也并不能完全解决执行过程中偶发的“没有权限”问题。
  A)修改这个js文件,重新丢进包里;
  B)如果使用ie测试,则尽量使用iehta模式;
  C)重写一下click和type等方法,指定超时时间,在指定时间内反复try。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2012-4-28 17:46:13 | 只看该作者
1. 等待了30秒后,确认下页面是否真的加载完成(进度条),如果没有waitForPageToLoad超时则正常;
2. 注释掉waitForPageToLoad,当页面处于刷新状态时,执行selenium操作,特别是ieElementPresent()和isTextPresent()的命令,报没有权限是常有的事
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-5-9 00:36:29 | 只看该作者
很明显,是浏览器没有响应,脚本没有录制错误。
两种错误可能:1 你的junit没配置好,你可以运行一下你的eclipse,看脚本运行的时候,有没有把IE打开baidu
2.你的   @Before那里没有设置对。
        public void setUp() throws Exception {
                WebDriver driver = new FirefoxDriver();
                String baseUrl = "http://www.baidu.com/";
                selenium = new WebDriverBackedSelenium(driver, baseUrl);
        }

错误1可能大。如果不太懂,可以+我群号20226323
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2012-5-18 13:56:55 | 只看该作者
鉴定完毕!












bbs.5dba.com  www.5sdg.com  www.0554zpw.com  www.8dnh.com
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2012-7-7 16:52:05 | 只看该作者
学习了~
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-23 04:47 , Processed in 0.073688 second(s), 29 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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