51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2266|回复: 6
打印 上一主题 下一主题

[原创] 关于webCheckBox对象name属性自动变化引起问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-4-2 15:40:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
在QTP8.2自带的预定航班的系统中,我录制了预定一个航班到删除该航班的过程.
结果发现回放失败,原因是在删除航班的页面,对象WebCheckBox中的用来唯一标识对象的Name属性
在每次回放过程中都自动取不同的值,且该属性值中的数字编号与数据库中的ID字段对应,
比如录制时脚本如下:
   Browser("Itenerary: Mercury Tours").Page("Itenerary: Mercury Tours").WebCheckBox("flight_164").Set "ON"
在回放时WebCheckBox的Name属性值由flight_164自动变为flight_165了,依次类推...而先前的对象在录制时随着
预定的航班被删除也被删除了,这样回放时自然找到不匹配的对象了,请问有什么办法可以让回放通过,又能保证每次
回放时删除的航班就是我预定的那个航班. 谢谢了!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-4-2 16:09:47 | 只看该作者
你要把WebCheckBox参数化,啊
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-4-2 17:54:23 | 只看该作者
参数化没用的,从那句脚本也可以看出来,它执行的操作是set,对应的值是ON和OFF,当然你可以在检查点属性中对name进行参数化,
但这样仍是找不到识别的对象呀
问题是每回放一次,生成了一个新的对象了,必须添加新的对象才能通过,而不是更改对象属性便可以的.
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-4-2 21:03:30 | 只看该作者

回复 #3 simeng2006 的帖子

凡是是动态变化的.一般只能用DP(descriptive programming) 都能实现. 在QTP8.2自带的预定航班的系统中和9.0 的好象不一样.他的网站是什么. 我来试试看
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-4-4 21:49:08 | 只看该作者
呵呵,使用childobject函数即可。你可以通过childobject函数的count方法得到当前有多少张票可以cancel。然后可以随机选择其中的几张来取消。当然childobject需要与description对象联合起来用。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2007-5-10 15:53:25 | 只看该作者
我也存在此问题啊,添加记录,但是记录随机存放,我想删除我刚刚添加的记录,怎么才能找到?如果找不到会把别人的记录删除,
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2007-5-11 09:29:14 | 只看该作者
我觉得添加得记录属性中,肯定记录的某个属性值和WebCheckBox有相关连的地方,找找看看
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-9-21 20:37 , Processed in 0.086572 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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