51Testing软件测试论坛

标题: 回放时WebEdit("WebEdit").Set 无法识别 [打印本页]

作者: joycena    时间: 2009-1-8 16:34
标题: 回放时WebEdit("WebEdit").Set 无法识别
java类开发的项目部分采用了dorado控件来实现.
在录制脚本时出现以下问题
1) 部分操作录制时QTP没识别下来,但经过手动添加对象语句,回放时能运行;
2)对于期间策略进行录制时,也采用手动添加方式,但回放时时而回放失败提示object disability. 但时而 短期间内回放成功,一段时间后(可能10分钟后)同一脚本,回访就失败.
该策略系统实现方式是,策略以列表形式展示,若为'年',则显示输入年金额的一个编辑框,若选'季',则显示四个季度金额输入框.
备注:该金额输入框 数量根据所选策略所调整,且开始默认为非 编辑框,待手动点击后,才允许输入数字(所以区别于一般的输入框).
以下为相关的录制脚本:
'点策略'年'
Browser("费用报销预算管理系统").Page("费用报销预算管理系统_2").Frame("main").WebElement("WebElement").Click 
'设置年的金额为150
Browser("费用报销预算管理系统").Page("费用报销预算管理系统_2").Frame("main").WebEdit("WebEdit").Set "150"

===:回放时,第一步基本能正常运行,但第二步提示 object disability.
中间用以下语句来识别 WebEdit对象是否存在,但当测试失败时,都提示该对象不存在.
If WebEdit("WebEdit").Set   Then

====: 所以想请问 QTP是否也存在session过期等现象,该如何处理.
若无,则为何会出现此类不稳定现象.

3)测试中另一头大问题是,该系统由代码控制了 自动登陆功能,IE中即使把表单记录项给去掉,并将自动登陆功能不勾选,则下次登陆系统时 系统都默认自动登陆.
从而导致 QTP录制时 对于录制的登陆功能都无法正常运行(因为页面一打开,上次登陆用户直接登陆,根本不需要用户帐号登陆,导致录制的登陆功能步骤无法正常执行).
当前调整的方式是:先执行退出,再重新登陆,则才可正常以用户登陆.
=====:不晓得 高手们有何其他方式解决此问题.
作者: 206fuqi    时间: 2009-2-19 12:09
我也碰到同样的问题,但是用下面的方式可以输入一个框的数值,其他框的webedit对象与第一个框识别成同一对象了

Browser("费用报销预算管理系统").Page("费用报销预算管理系统_2").Frame("main").WebEdit("WebEdit").Set "150"
换成  ("WebEdit").Object.innerText="150"
作者: dreamever    时间: 2009-2-19 13:28
第一个问题描述太多,细节实在是看不完了,测试脚本出现回放失败的问题,一般先查找一下在回放的时候测试对象是否发生了变化,特别是对于IE端的,很多时候一个操作会导致页面上其他对象属性的改变;以前我碰到的情况是,当点击提交按钮后,视觉上页面布局虽然没有改变,但是实际上系统中已经换了另外的一个frame来显示结果,当查看测试对象的时候,发现对象地图的结构树变了,导致找不到对象。这种问题原因很复杂,没有界面,没有操作前后的测试对象地图,查找起来的话很困难。感觉这属于那种只能靠自己解决的问题了,别人很难给出具体的解决步骤
关于第二个问题,我觉的那应该是系统的一个缺陷,跟你的脚本无关.




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2