51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] 编写的QTP自带 flight reservation的一段程序,希望实现随机抽取一个起始地址

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-3-16 21:28:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
ItemsCount1 = Window("Flight Reservation").WinComboBox("Fly From:").GetItemsCount
msgbox ItemsCount1  ‘这里显示的结果是10
SelectFnumber = int (ItemsCount1*Rnd)   
msgbox SelectFnumber  '为什么这里显示的结果总是7
myarray = split(Window("Flight Reservation").WinComboBox("Fly From:").GetROProperty("all items")," ")
msgbox myarray(1)  ’这里总是显示下面的输出
Fly_From1 = myarray(SelectFnumber)    ‘这里总是出错说是下标越界

对象的all item属性下是这些地址:
Denver
Frankfurt
London
Los Angeles
Paris
Portland
San Francisco
Seattle
Sydney
Zurich

myarray(1) 总是输出:
Angeles
Paris
Portland
San
难道我应该用回车来打散这个数组吗?那该怎么表示呢?
请各位大侠帮帮忙吧,谢谢了
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-3-17 11:27:53 | 只看该作者
求助帖不要选择付费主题,可以选择发布悬赏。
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2011-3-17 15:56:52 | 只看该作者
SelectFnumber = int (ItemsCount1*Rnd)   
msgbox SelectFnumber  '为什么这里显示的结果总是7

这个值一直是7是因为这个随机函数rnd的问题,你使用random随机函数即可以解决这个问题

Fly_From1 = myarray(SelectFnumber)    ‘这里总是出错说是下标越界
这个越界说明数组没有那么多元素,你看一下那个数组的所有内容是多少
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2011-3-17 23:17:50 | 只看该作者
呵呵 已经解决了,是random函数的问题。

重新用RandomNumber函数取随机数,
ItemsCount=Window("Flight Reservation").WinComboBox("Fly From:").GetItemsCount
RandomCout=RandomNumber(0,ItemsCount)   

然后用回车打散。
flyarray=split(myarray,vbLf )      


ok了!
回复 支持 反对

使用道具 举报

  • TA的每日心情

    2015-9-10 15:08
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    5#
    发表于 2011-3-22 17:53:25 | 只看该作者
    没错 加个随机函数就OK了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-18 19:52 , Processed in 0.082225 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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