li12345678997 发表于 2012-4-26 11:37:03

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

源程序:
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,请各位高手指点下,谢谢!

sweetyxu 发表于 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。

vzhao8406 发表于 2012-4-28 17:46:13

1. 等待了30秒后,确认下页面是否真的加载完成(进度条),如果没有waitForPageToLoad超时则正常;
2. 注释掉waitForPageToLoad,当页面处于刷新状态时,执行selenium操作,特别是ieElementPresent()和isTextPresent()的命令,报没有权限是常有的事

514423564 发表于 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

灿璨丰x 发表于 2012-5-18 13:56:55

鉴定完毕!











http://www.discuz.net/static/image/common/sigline.gif
bbs.5dba.comwww.5sdg.comwww.0554zpw.comwww.8dnh.com

tianlong1285 发表于 2012-7-7 16:52:05

学习了~
页: [1]
查看完整版本: 求助!如何解决Selenium+eclipse下关于timeout的问题