51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2973|回复: 15
打印 上一主题 下一主题

[求助] 怎样录制这样的脚本?

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-7-2 15:14:33 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
最近在录制一个页面的脚本时遇到麻烦,见下图,我对第一个提示信息插入标准检查点,选择的是webtable对象,然后对表格中提示信息的那一列做了参数化。问题是:怎样获取列表中的值呢,因为其值为多个,我想把它们赋给一个数组,但怎么赋呢,请高手给出答复,最好将脚本写一下,谢谢了!!!
很想知道这类问题的解决方法:提示信息是在文本框后给出的,而不是跳出对话框给出的,是否需要插入检查点,插入检查点后怎么进行判断呢?希望各位大侠们指点一下,最好能给出判断的脚本,多谢了!!!

[ 本帖最后由 zhengpeipei 于 2009-7-7 11:46 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2009-7-2 15:25:51 | 只看该作者
我用下面的语句来试了一下,QTP报错:类型不匹配,应该怎样写呢?
For j=2 to 10
    status(j,2)=Browser("xxx").Page("xxx").Frame("xxx").WebTable("广告类型:").GetCellData(j,2)
    j=j+1
Next
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2009-7-2 15:41:29 | 只看该作者
每一个标准检查点对应table中的一个值,我记得只能是这样~所以,一个标准点你就对应表格中的一个值吧
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2009-7-2 15:46:09 | 只看该作者
原帖由 zhengpeipei 于 2009-7-2 15:25 发表
我用下面的语句来试了一下,QTP报错:类型不匹配,应该怎样写呢?
For j=2 to 10
    status(j,2)=Browser("xxx").Page("xxx").Frame("xxx").WebTable("广告类型:").GetCellData(j,2)
    j=j+1
Next


for循环了,还j=j+1??有点不明白了,这个地方,for本身增加的步长默认的就是自动+1的了,不知道你的原意是不是步长为2的,如果是的话,最好就这样写了for j=2 to 10 setp 2
类型不匹配,是不是你原来定义了一个一维数组 status,但是使用的时候当成二维的来用
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2009-7-2 16:05:13 | 只看该作者
N=Browser("xxx").Page("xxx").Frame("xxx").WebComboBox("xxx").getItemsCount
For i=0 to N-1
myarray=Browser("xxx").Page("xxx").Frame("xxx").WebComboBox("xxx").getItem(i)
Next
回复 支持 反对

使用道具 举报

该用户从未签到

6#
 楼主| 发表于 2009-7-2 16:27:49 | 只看该作者

回复5#的帖子

webtable对象没有getItemsCount方法啊,只有GetCellData(行,列)
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2009-7-2 17:08:09 | 只看该作者
那你变通一下撒!
N=Browser("xxx").Page("xxx").Frame("xxx").WebList("xxx").GetRoProperty("items count")
For i=0 to N-1
myarray=Browser("xxx").Page("xxx").Frame("xxx").WebList("xxx").getItem(i)
Next
回复 支持 反对

使用道具 举报

该用户从未签到

8#
 楼主| 发表于 2009-7-3 09:12:34 | 只看该作者
那位高手可以给一个类似的页面的脚本来参考学习一下,因为刚涉及QTP,想对这块学习一下。
谢谢!!!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2009-7-3 14:34:34 | 只看该作者
我觉得你可以参考一下Dictionary这个类似于数据字典的一个数据结构,它是动态的可以自己判断下标值,你只管赋值 具体用法你可以参考HELP里面的列子
回复 支持 反对

使用道具 举报

该用户从未签到

10#
 楼主| 发表于 2009-7-6 10:21:09 | 只看该作者
像这样类型的脚本,我怎么判断这些提示信息的存在呢,并且这些提示信息一个文本框后不止一种提示信息?
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2009-7-6 10:29:13 | 只看该作者

回复7#的帖子

我试了一下,回放时报错:The statement contains one or more invalid function arguments.
回复 支持 反对

使用道具 举报

该用户从未签到

12#
 楼主| 发表于 2009-7-6 14:24:43 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

13#
 楼主| 发表于 2009-7-7 11:42:15 | 只看该作者
各位高手指点一下啊
回复 支持 反对

使用道具 举报

该用户从未签到

14#
 楼主| 发表于 2009-7-7 18:00:56 | 只看该作者
回复 支持 反对

使用道具 举报

该用户从未签到

15#
发表于 2009-7-9 14:01:44 | 只看该作者
“很想知道这类问题的解决方法:提示信息是在文本框后给出的,而不是跳出对话框给出的,是否需要插入检查点,插入检查点后怎么进行判断呢?希望各位大侠们指点一下,最好能给出判断的脚本,多谢了!!!”
这个在之前有看到一个类似的帖子,这个是innerhtml,它的解决方法如下:
dim desc
set desc=description.create
desc("classname").value="webelement"
desc("innerhtml").value="请选择..."
if browser("xxx").page("xxx").frame("xxx").webelement(desc).exist then
   reporter.xxx
else
   reporter.xxx
end if
回复 支持 反对

使用道具 举报

该用户从未签到

16#
发表于 2009-7-9 14:06:04 | 只看该作者
“问题是:怎样获取列表中的值呢,因为其值为多个,我想把它们赋给一个数组,但怎么赋呢,请高手给出答复,最好将脚本写一下,谢谢了!!!”
至于这个的话,是否可以把下拉列表里的各个选项值写在datatable里面作为一列,然后用语句去逐条取值。不知道是否是你想要的结果?
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-27 11:32 , Processed in 0.151716 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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