51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2161|回复: 4
打印 上一主题 下一主题

[原创] weblist对象的方法与“#”的使用

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-7-26 19:47:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    最近使用QTP发现一个很奇怪的问题,为了对几个WebList对象做随机选取,尝试用rnd来完成。但是问题就来了,定义了num为列表范围内随机产生的数字。脚本如下
Option Explicit
Randomize
Dim ilist
Dim num
ilist = Browser("*****
系统").Page("*****系统
").WebList("food").GetROProperty("items count")
’获取列表元素个数

msgbox ilist
num=int((ilist*rnd))
’随机选列表内元素
msgbox num
Browser("*****
系统").Page("*****系统").WebList("food").Select num
此时问题出现了,执行中无法从对象中识别出num的值,在网上找了很多资料都没看到解决方法,一个偶然的搜索,在网上一个脚本程序里突然发现了一个特殊的描述Select "#" & num,虽然我无法查到"#"的用处,但抱着试下态度还是用在了脚本里,竟然通过了,完成了随机选择。
Browser("*****系统").Page("*****系统").WebList("food").Select 1 或者
Browser("*****系统").Page("*****系统").WebList("food").Select ilist-1都可以执行。
但就是
Browser("*****系统").Page("*****系统").WebList("food").Select num无法执行。于是向老师发邮件请教了这个原因,终于等到了回复,发布如下。
#没什么特殊的含义,就是为了标识后面的是一个数值。因为weblistselect方法后面可以是一个内容项或者索引值,而当你希望是索引值时,官方建议你用"#index"的形式去标识它,这个索引值从0开始。记住,这个时候"#index"是一个字符串,比如 "#1" "#2"这样。而至于为什么不加井号而可以直接写1呢?这个就在于QTP自己的内部处理了。
总而言之,记得加井号是官方要求你加的,你加上就行了。(霸王条款嘛,汗~~!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-7-26 23:10:30 | 只看该作者
原帖由 hahu2001 于 2007-7-26 19:47 发表
    最近使用QTP发现一个很奇怪的问题,为了对几个WebList对象做随机选取,尝试用rnd来完成。但是问题就来了,定义了num为列表范围内随机产生的数字。脚本如下
Option Explicit
Randomize
Dim ilist
Dim nu ...

你查查QTP的help,就知道#是为了标识index,加和不加都是可以的。
你既然知道index由0开始,就应该明白你的script有问题,应该写这样:
ilist = Browser("*****系统").Page("*****系统").WebList("food").GetROProperty("items count") - 1
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-7-29 19:20:51 | 只看该作者
-1 ?为什么?还是没明白...
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-7-31 11:32:02 | 只看该作者

不-1就越界了。

rt
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-7-31 11:51:34 | 只看该作者
楼上的意思偶明白,的确越界了。查了下帮助,发现select方法还真麻烦,针对不同的对象,起始的索引值还不一样。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-26 00:46 , Processed in 0.067638 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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