51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

123
返回列表 发新帖
楼主: bruce.gu
打印 上一主题 下一主题

Selenium 连续记录【有啥问题可以在这里问,一起讨论】

[复制链接]

该用户从未签到

41#
 楼主| 发表于 2009-1-14 16:39:59 | 显示全部楼层
尝试selenium server 的 multiwindow 模式
原帖由 fairylly 于 2009-1-14 16:20 发表


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

使用道具 举报

该用户从未签到

42#
 楼主| 发表于 2009-1-14 17:29:53 | 显示全部楼层
恭喜,加油。呵呵
原帖由 fairylly 于 2009-1-14 17:14 发表


使用multiwindow模式,可以解决该问题,谢谢。。。
回复 支持 反对

使用道具 举报

该用户从未签到

43#
 楼主| 发表于 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 发表

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

不通过的地方,通常是waitForPageToLoad超时
回复 支持 反对

使用道具 举报

该用户从未签到

44#
 楼主| 发表于 2009-1-15 11:40:55 | 显示全部楼层
是不是这个地方根本不需要这个命令?出错的时候,可以用Thread.sleep(); 代替来调式一下。
原帖由 fairylly 于 2009-1-15 10:02 发表
出错的时候,一段时间内(有时几小时,有时一天)都是同一个地方出错;不是一会正常一会出错,而是持续性的

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

使用道具 举报

该用户从未签到

45#
 楼主| 发表于 2009-1-15 13:22:55 | 显示全部楼层
好像会有影响的。。去掉试试看好了。
原帖由 fairylly 于 2009-1-15 12:04 发表


可以不要waitForPageToLoad函数时,我也加了这句,会有影响吗?
回复 支持 反对

使用道具 举报

该用户从未签到

46#
 楼主| 发表于 2009-1-15 17:30:28 | 显示全部楼层
多次提交造成的吧。
原帖由 fairylly 于 2009-1-15 16:58 发表
运行脚本过程中,使用的是FF浏览器
但一些操作会导致出现:
48645

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

使用道具 举报

该用户从未签到

47#
 楼主| 发表于 2009-1-16 14:31:40 | 显示全部楼层

try{
selenium.getConfirmation();
}catch(Exception e){}
试试
原帖由 fairylly 于 2009-1-15 17:33 发表
切换页面风格,即整个WEB的TPL模版全部变化导致的
回复 支持 反对

使用道具 举报

该用户从未签到

48#
 楼主| 发表于 2009-1-19 09:32:20 | 显示全部楼层
对的,浏览器本身的是捕获不到的,selenium只能捕获js的。alert, confirmation 之类。
原帖由 fairylly 于 2009-1-19 08:43 发表


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

使用道具 举报

该用户从未签到

49#
 楼主| 发表于 2009-1-19 13:14:24 | 显示全部楼层
用selenium IDE 在firefox 上面跑一下你下面三条命令看。
原帖由 nosedive 于 2009-1-19 11:21 发表
hi, 我有一个问题要请教。
现在需要按“moody's NRDE"按钮,然后进入到下一个界面中,这个操作在IE上是可以通过的。但是用selenium跑的时候页面就不能跳转到下一个界面了,并且提示"done. but with errors on page. ...
回复 支持 反对

使用道具 举报

该用户从未签到

50#
 楼主| 发表于 2009-1-20 10:17:46 | 显示全部楼层
关于frame 用multiwindow的方式比较好。好像。。
原帖由 nosedive 于 2009-1-19 17:30 发表


问题解决了,我之前写的不清楚,估计很难找到问题。其实是这样的。“GotoNRDE”不是一个简单的button,click它之后其实是调用了一个javascript。然后我猜想问题是出在页面加载JS上了。因为selenium在运行的时候 ...
回复 支持 反对

使用道具 举报

该用户从未签到

51#
 楼主| 发表于 2009-1-20 18:24:03 | 显示全部楼层
你这个问题比较棘手,尝试去 selenium的官方论坛上搜索看。关于pop up window的也是一个热门的问题。一直是没有得到很好的解决。而且每个程序的情况又有所不同。。
建议在 http://clearspace.openqa.org/ 里面搜索"pop up" 的帖子。可以搜说出来一大堆。希望你能够找到解决方案。。

原帖由 chnapple 于 2009-1-20 15:50 发表
各位大侠,小弟是绝对新手,刚刚接触Selenium这个工具.以下的代码是我通过IDE直接抓取的:
import com.thoughtworks.selenium.*;

public class NewTest extends SeleneseTestCase {
        public void setUp( ...
回复 支持 反对

使用道具 举报

该用户从未签到

52#
 楼主| 发表于 2009-2-2 14:41:13 | 显示全部楼层
没有,除非你自己写。

另外用ide录制下来的东西经常是不可靠的。无效的时候建议还是要从分析html,手动写脚本,然后可以到ide上面去调试你手动写的脚本对不对。

原帖由 fairylly 于 2009-2-1 17:51 发表
selenium如何支持时间控件呢?
项目中有用到两种时间控件(开源的控件):
1)My97DatePicker
2)calendar
第一种控件,IDE录制的脚本为:selenium.click("//td[@onclick='day_Click(2009,1,29);']");
但执行脚 ...
回复 支持 反对

使用道具 举报

该用户从未签到

53#
 楼主| 发表于 2009-5-21 17:43:31 | 显示全部楼层
sel.start(); 没写吧
原帖由 meiliqingdao 于 2009-4-23 14:37 发表
我把代码贴出来,让高手帮我看一下!5555
package com.example.tests;

import java.util.regex.Pattern;
import com.thoughtworks.selenium.*;
import junit.framework.TestCase;


public class NewTest ext ...
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-5-18 06:17 , Processed in 0.077658 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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