51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2820|回复: 11
打印 上一主题 下一主题

[原创] QTP怎样随机打开链接啊

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-4-17 14:37:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如果web页面的link数不固定,我又想随机打开某个页面的某个link,应该在脚本中怎样设置呢?
我原以为可以取出页面中的link总数,然后按照随机数打开,可是GetItemsCount又没有,我晕了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-4-17 14:56:31 | 只看该作者
设置X为随机数
x=RandomNumber(1,256)  '设置X为1到256之间的任何一个数
Object.link("index:="&x).click

这个方法有一个问题就是你页面上到底有多少个连接呢?不知道,隐藏了多少个连接呢?也不知道,所以可能会出错,也不好控制!

其他我暂时没想到还能有什么办法
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-4-17 15:17:13 | 只看该作者
页面中Link的总数是可以很容易取到的~用ChildObjects方法返回Page下所有满足你所指定条件的链接给一个集合,然后取集合的Count属性就行了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-4-17 15:31:34 | 只看该作者
原帖由 hsjzfling 于 2008-4-17 15:17 发表
页面中Link的总数是可以很容易取到的~用ChildObjects方法返回Page下所有满足你所指定条件的链接给一个集合,然后取集合的Count属性就行了

不可能这么简单,多少隐藏的呢?
当达到某种条件的时候出现另外一个页面,也就是说平时是不出现的,那点了就可能出错,这样算出来的总数是错误的,不是真正页面上的总数
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2008-4-17 15:34:00 | 只看该作者
谢谢啊
但是还有个问题,如果连续两部操作,就是在首页随机点个link,进了2级页面后还要随机点个link,但是这个2级页面page()是随机的啊,库文件没有的,又咋办呢?
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2008-4-17 15:51:00 | 只看该作者
原帖由 鹭岛 于 2008-4-17 15:31 发表

不可能这么简单,多少隐藏的呢?
当达到某种条件的时候出现另外一个页面,也就是说平时是不出现的,那点了就可能出错,这样算出来的总数是错误的,不是真正页面上的总数


事实就是这么简单~~你自己也说了,"出现另外一个页面的时候",都不是一个Page了,怎么会取到那个值呢~~可行不可行自己尝试下就知道了。仔细看看我所说的,我还特意提醒可以加入指定条件进行筛选,避免随机选中到某些不想选中的link~~

而且还可以更简单的来取到页面上所有link的总数,表问为什么~~
Browser().Page().GetROProperty("number of links")
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2008-4-17 16:02:09 | 只看该作者
这个太神了
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2008-4-17 16:02:24 | 只看该作者
当然,页面上可能会存在些开发中残留的坏链接,那么在针对链接的测试中,这种打不开的链接就是提交的对象了,我们的目地是测试,而不是单纯的为了跑通一个脚本~
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2008-4-17 16:07:38 | 只看该作者
原帖由 zhihui990 于 2008-4-17 15:34 发表
谢谢啊
但是还有个问题,如果连续两部操作,就是在首页随机点个link,进了2级页面后还要随机点个link,但是这个2级页面page()是随机的啊,库文件没有的,又咋办呢?


Hint:Browser有CreationTime,index属性,Page也有index属性~~
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2008-4-17 16:27:00 | 只看该作者
原帖由 hsjzfling 于 2008-4-17 16:02 发表
当然,页面上可能会存在些开发中残留的坏链接,那么在针对链接的测试中,这种打不开的链接就是提交的对象了,我们的目地是测试,而不是单纯的为了跑通一个脚本~

如果纯粹是为了查看连接有没有效那根本不需要费这么打的力气
使用一个工具就可以了,使用:xenu
把你整个页面的所有有效无效的连接全抓出来
回复 支持 反对

使用道具 举报

该用户从未签到

11#
发表于 2008-4-17 18:43:56 | 只看该作者
原帖由 鹭岛 于 2008-4-17 16:27 发表

如果纯粹是为了查看连接有没有效那根本不需要费这么打的力气
使用一个工具就可以了,使用:xenu
把你整个页面的所有有效无效的连接全抓出来


单纯测试链接的工具确实不少,以前也有讨论过。
但是我们既然已经选择了用QTP来进行测试,那么遇到缺陷引起的问题就不应该选择绕过,而是应该提出来解决,这是原则问题,否则用QTP来测试的目的何在?仅仅只是为了能把一套流程从头跑到尾,最后得到一个pass的结果?

测试链接也是Web测试的一个部分,QTP既然也可以在测试的过程中做到,那为何要选择回避呢~~

如果说非要选择其它工具去做,那么设计QTP脚本的时候就不需要再重复考虑这种问题了,那么我之前的方法就更不会有问题咯,只需要把不想选中的链接筛掉就可以了:)

======只是讨论======
回复 支持 反对

使用道具 举报

该用户从未签到

12#
发表于 2008-4-21 11:48:03 | 只看该作者
Browser().Page().GetROProperty("number of links")这个太神了
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-8 16:42 , Processed in 0.073626 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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