bruce.gu 发表于 2009-1-14 16:39:59

尝试selenium server 的 multiwindow 模式
原帖由 fairylly 于 2009-1-14 16:20 发表 http://bbs.51testing.com/images/common/back.gif


我不是想“取消”,就是“确定”退出,查看确定退出后的页面是否是我想要的页面
但退出后,退出页面会把整个浏览器替换,这样就没办法继续后面的工作了

fairylly 发表于 2009-1-14 17:14:46

原帖由 bruce.gu 于 2009-1-14 16:39 发表 http://bbs.51testing.com/images/common/back.gif
尝试selenium server 的 multiwindow 模式


使用multiwindow模式,可以解决该问题,谢谢。。。

bruce.gu 发表于 2009-1-14 17:29:53

恭喜,加油。呵呵
原帖由 fairylly 于 2009-1-14 17:14 发表 http://bbs.51testing.com/images/common/back.gif


使用multiwindow模式,可以解决该问题,谢谢。。。

fairylly 发表于 2009-1-14 17:49:47

:loveliness:
还想问个问题:
你是否有遇到过:同样的代码,SRC运行时,有时通过,有时不通过呢?

不通过的地方,通常是waitForPageToLoad超时

bruce.gu 发表于 2009-1-15 09:51:33

这个很正常,有时候服务器或者网络慢,那就超时了喽。
可以wait时间长一点试试。不过selenium默认最长等待时间是30s。如果你要设置更加长的,你要先selenium.setTimeout(timeout);然后再selenium.waitForPageToLoad(timeout).

另外 如果是ajax里面,不是整个页面load的话,还用wait for element to present 好。
原帖由 fairylly 于 2009-1-14 17:49 发表 http://bbs.51testing.com/images/common/back.gif
:loveliness:
还想问个问题:
你是否有遇到过:同样的代码,SRC运行时,有时通过,有时不通过呢?

不通过的地方,通常是waitForPageToLoad超时

fairylly 发表于 2009-1-15 10:02:59

出错的时候,一段时间内(有时几小时,有时一天)都是同一个地方出错;不是一会正常一会出错,而是持续性的

而且我开WEB端,手动点击时,也都是很快反映过来的
应该不是网络和服务器的问题
其它反映慢的页面都能正常加载,原本加载很快的页面反而出错

bruce.gu 发表于 2009-1-15 11:40:55

是不是这个地方根本不需要这个命令?出错的时候,可以用Thread.sleep(); 代替来调式一下。
原帖由 fairylly 于 2009-1-15 10:02 发表 http://bbs.51testing.com/images/common/back.gif
出错的时候,一段时间内(有时几小时,有时一天)都是同一个地方出错;不是一会正常一会出错,而是持续性的

而且我开WEB端,手动点击时,也都是很快反映过来的
应该不是网络和服务器的问题
其它反映慢的页面都能 ...

fairylly 发表于 2009-1-15 12:04:10

原帖由 bruce.gu 于 2009-1-15 11:40 发表 http://bbs.51testing.com/images/common/back.gif
是不是这个地方根本不需要这个命令?出错的时候,可以用Thread.sleep(); 代替来调式一下。


可以不要waitForPageToLoad函数时,我也加了这句,会有影响吗?

bruce.gu 发表于 2009-1-15 13:22:55

好像会有影响的。。去掉试试看好了。
原帖由 fairylly 于 2009-1-15 12:04 发表 http://bbs.51testing.com/images/common/back.gif


可以不要waitForPageToLoad函数时,我也加了这句,会有影响吗?

fairylly 发表于 2009-1-15 14:12:56

确实有影响
如果页面没有变化,或变化太快,使用waitForPageToLoad函数,反而会造成超时出错

fairylly 发表于 2009-1-15 16:58:46

运行脚本过程中,使用的是FF浏览器
但一些操作会导致出现:


使用selenium.getConfirmation();,会提示说:There were no confirmations
是否有什么其它解决方案呢?
(注:FF下手动操作时,没有该弹出框,只有在eclipse中运行脚本时,浏览器里才会有该弹出框)

尝试在FF的“工具”->“选项”中,修改一些配置,但没有效果
selenium中是否有什么方法可行呢?

可以使用selectWindow吗?但这种情况下,我也不知道应该如何使用它

bruce.gu 发表于 2009-1-15 17:30:28

多次提交造成的吧。
原帖由 fairylly 于 2009-1-15 16:58 发表 http://bbs.51testing.com/images/common/back.gif
运行脚本过程中,使用的是FF浏览器
但一些操作会导致出现:
48645

使用selenium.getConfirmation();,会提示说:There were no confirmations
是否有什么其它解决方案呢?
(注:FF下手动操作时,没有该弹出框 ...

fairylly 发表于 2009-1-15 17:33:19

切换页面风格,即整个WEB的TPL模版全部变化导致的

bruce.gu 发表于 2009-1-16 14:31:40


try{
selenium.getConfirmation();
}catch(Exception e){}
试试
原帖由 fairylly 于 2009-1-15 17:33 发表 http://bbs.51testing.com/images/common/back.gif
切换页面风格,即整个WEB的TPL模版全部变化导致的

fairylly 发表于 2009-1-19 08:43:26

原帖由 bruce.gu 于 2009-1-16 14:31 发表 http://bbs.51testing.com/images/common/back.gif

try{
selenium.getConfirmation();
}catch(Exception e){}
试试


使用try catch不行
打印错误信息,还是com.thoughtworks.selenium.SeleniumException: ERROR: There were no confirmations这个弹出框是FF浏览器本身弹出的,不是程序代码导致的
所以用selenium.getConfirmation应该是捕获不到的吧

bruce.gu 发表于 2009-1-19 09:32:20

对的,浏览器本身的是捕获不到的,selenium只能捕获js的。alert, confirmation 之类。
原帖由 fairylly 于 2009-1-19 08:43 发表 http://bbs.51testing.com/images/common/back.gif


使用try catch不行
打印错误信息,还是com.thoughtworks.selenium.SeleniumException: ERROR: There were no confirmations这个弹出框是FF浏览器本身弹出的,不是程序代码导致的
所以用selenium.getConfirmati ...

nosedive 发表于 2009-1-19 11:21:15

hi, 我有一个问题要请教。
现在需要按“moody's NRDE"按钮,然后进入到下一个界面中,这个操作在IE上是可以通过的。但是用selenium跑的时候页面就不能跳转到下一个界面了,并且提示"done. but with errors on page."这是怎么回事?
sever 上有一个报错是:
warn-invalid length: content-length=22395 written=16047 for http://mdynycdssmdev.ad.moodys.net/moodys.nrde.UI.E2E2_DDS/MOODYS.CSS

我的代码如下:
public void test() throws Throwable {
... ...
                selenium.selectFrame("Tree");          
                selenium.click("GotoNRDE");
                selenium.waitForPageToLoad("50000");
    }
http://nosedive321.blog.163.com/prevAlbumsInUser.do?albumId=-1

[ 本帖最后由 nosedive 于 2009-1-19 11:37 编辑 ]

bruce.gu 发表于 2009-1-19 13:14:24

用selenium IDE 在firefox 上面跑一下你下面三条命令看。
原帖由 nosedive 于 2009-1-19 11:21 发表 http://bbs.51testing.com/images/common/back.gif
hi, 我有一个问题要请教。
现在需要按“moody's NRDE"按钮,然后进入到下一个界面中,这个操作在IE上是可以通过的。但是用selenium跑的时候页面就不能跳转到下一个界面了,并且提示"done. but with errors on page. ...

nosedive 发表于 2009-1-19 15:53:31

我们的系统不支持firefox。。。没办法在FF里跑,我直接抓取到对象,然后写的代码。

[ 本帖最后由 nosedive 于 2009-1-19 16:17 编辑 ]

nosedive 发表于 2009-1-19 17:30:04

原帖由 nosedive 于 2009-1-19 15:53 发表 http://bbs.51testing.com/images/common/back.gif
我们的系统不支持firefox。。。没办法在FF里跑,我直接抓取到对象,然后写的代码。

问题解决了,我之前写的不清楚,估计很难找到问题。其实是这样的。“GotoNRDE”不是一个简单的button,click它之后其实是调用了一个javascript。然后我猜想问题是出在页面加载JS上了。因为selenium在运行的时候会在回放的页面底部整合进两个frame,就是我们看selenium的控制台。但是当页面调用JS时,可能涉及到页面frame,如果这个JS写的不严谨的话,就可能找不到对应的frame,所以页面就出错了。
然后在运行selenium时把底部的frame给去掉就可以了。
不知道我说清楚了没有,总之如果大家遇到这样的问题可以这么试试。另外,我觉得其实可以的话,最好能建议SE把代码改一改。,毕竟你不能确定客户会在IE上加载什么。
页: 1 2 3 4 [5] 6
查看完整版本: Selenium 连续记录【有啥问题可以在这里问,一起讨论】