dba 发表于 2005-6-20 15:03:35

关于下拉菜单随机选择的问题!

请问,对于网页的下拉菜单选择,能不能写脚本每次都让他随机选择呢?

QA_BAY 发表于 2005-6-20 15:35:15

好像试了一下,只能随机数字!
你说的那一种没有找到!
不知道其它的网友知道吗?

michelle_happy 发表于 2005-6-20 15:42:29

我觉得应该是不能的,除非自己做一个方法调用
先得把下拉框中所有项都输出,然后随机抽取一个输入

lovetest6 发表于 2005-6-20 15:50:58

自己写脚本嘛,MSN上是不是问过我?

应该可以实现。

QA_BAY 发表于 2005-6-20 16:21:01

Originally posted by michelle_happy at 2005-6-20 03:42 PM:
我觉得应该是不能的,除非自己做一个方法调用
先得把下拉框中所有项都输出,然后随机抽取一个输入
对,我也是这样想.
先算出有多少个数据,然后调用一个随机数来选择!

lovetest6 发表于 2005-6-20 16:42:05

是啊,就应该这样啊,不过还是要问问清楚,打算做什么呢?

打算测试页面上的javascript么??

选完了,页面会跳转么?跳转是当前页面跳转,还是弹出呢?

lovetest6 发表于 2005-6-20 16:43:58

我想楼主的意思是在一个循环的action中,随机的选吧?

还是在一个页面上选啊?

dba 发表于 2005-6-20 17:36:23

是的,在一个循环的action中随机的选择!

lovetest6 发表于 2005-6-20 17:47:44

生成一个随机数就可以了。比如生成一个5到10之间的随机数
IndexNum=Int((10 - 5 + 1) * Rnd + 5)

Sub Select_Example2()

'In the following example, the Select method is used to
'select a city by its index number in the list of possible
'arrival cities.

Browser("Mercury Tours").Page("Find Flights_2").WebList("arrive").Select "#4"


End Sub

上面是MI的例子。

在循环里面把"#4"改成"#"&IndexNum就可以了。

[ Last edited by lovetest6 on 2005-6-20 at 18:06 ]

lovetest6 发表于 2005-6-20 18:12:29

For i =1 to 10
    Randomize
    IndexNum=Int((10 - 5 + 1) * Rnd + 5)
    Browser("Mercury Tours").Page("Find Flights_2").WebList("arrive").Select "#"&IndexNum
    wait(3)
Next

这样可以了吧?

[ Last edited by lovetest6 on 2005-10-27 at 14:43 ]

data 发表于 2005-6-21 09:37:22

请问我加入了随机脚本之后,为什么回放到“Browser("会员销售系统").Page("会员销售系统_2").WebList("questionId").Select "#"&IndexNum”时就会报错,我的选择列表里面有4个选项,是否生成随机书那里错了?

Browser("会员销售系统").Page("会员销售系统").Link("注册新用户").Click
Browser("会员销售系统").Page("会员销售系统_2").WebEdit("userName").Set "laex"
Browser("会员销售系统").Page("会员销售系统_2").WebEdit("password").SetSecure "42b76ae629f70b0c87bc2c5dd673"
Browser("会员销售系统").Page("会员销售系统_2").WebEdit("confirm").SetSecure "42b76ae9940e8b276b1421e0f4e2"
For i =1 to 4
IndexNum=Int((4 - 1 + 1) * Rnd + 4)
Browser("会员销售系统").Page("会员销售系统_2").WebList("questionId").Select "#"&IndexNum
    wait(3)
Next
Browser("会员销售系统").Page("会员销售系统_2").WebEdit("answer").Set "panda"

lovetest6 发表于 2005-6-21 10:57:24

应该是0123吧??
试试看不就知道了?

QA_BAY 发表于 2005-6-21 12:02:03

Originally posted by data at 2005-6-21 09:37 AM:
请问我加入了随机脚本之后,为什么回放到“Browser("会员销售系统").Page("会员销售系统_2").WebList("questionId").Select "#"&IndexNum”时就会报错,我的选择列 ...
你这个做是不行的!
你原先选择的是一个名称,是一个字符串,
你加了LOVETEST6的程序进去之后,变成了选择一个随机数,所以就出现错误
你应该先让QTP去选择一个数字,然后再写一个随机数应该这样才可以!

lovetest6 发表于 2005-6-21 13:06:06

http://bbs.51testing.com/viewthread.php?tid=13902&fpage=1
上面的贴上讨论过,weblist是从0开始的。不是从一开始的。

另外for循环上的1 to 10没什么意义,只是演示给你看10遍而已:)
呵呵。

data 发表于 2005-6-21 15:41:53

那到底改怎么写啊,越听越乱了!

lovetest6 发表于 2005-6-21 15:56:26

我认为说的够明白了,你哪儿不明白,可以说出来啊。

忽略QA_BAY的发言就行了,呵呵:)

飘雪 发表于 2005-6-21 16:15:00

Originally posted by lovetest6 at 2005-6-21 01:06 PM:
http://bbs.51testing.com/viewthread.php?tid=13902&fpage=1
上面的贴上讨论过,weblist是从0开始的。不是从一开始的。

另外for循环上的1 to 10没什么意义,只是演示给你看10遍而已 ...

挺奇怪的,我的weblist的循环好像从1开始执行呀。

lovetest6 发表于 2005-6-21 16:42:27

那是估计因为0是"请选择"吧,呵呵

data 发表于 2005-6-21 17:52:40

请问lovetest6,我这个脚本应该怎么改呢?有什么地方错了?
IndexNum=Int((4 - 1 + 1) * Rnd + 4)
Browser("会员销售系统").Page("会员销售系统_2").WebList("questionId").Select "#"&IndexNum

lovetest6 发表于 2005-6-23 18:20:19

IndexNum=Int((10 - 5 + 1) * Rnd + 5)
以上代码生成5到10之间的随机数,
10是上界,5是下界。

weblist是从0开始的,你有四个选项。
那就是要0123之间的随机数。
也就是说你现在要生成0到3之间的随机数,

你说应该怎么改?呵呵:)

需要要我写出来么?可一加我的MSN询问。

[ Last edited by lovetest6 on 2005-6-23 at 18:28 ]
页: [1] 2
查看完整版本: 关于下拉菜单随机选择的问题!