4. 利用Dom本身的查找
Dom的createTextRange也提供了查找的相应方法。如下代码。
set a=Browser("网易电子邮箱 - 极速3.0正式版").Page("网易电子邮箱 - 极速3.0正式版").Frame("index").Object.body.createTextRange msgbox Check (a,"草稿箱") Public Function Check(ByRef Obj, ByRef checkStr) found = Obj.findText(checkStr) Obj.select Check=found End Function |
以上代码是登陆163邮箱后检索页面是否有“草稿箱”文本并选中文本。
5. 利用readyState判断页面当前所处状态
利用页面的readyState属性判断当前页面所处状态。
SystemUtil.Run "iexplore.exe", "http://www.sina.com.cn/" msgbox Browser("新浪首页").Page("新浪首页").Object.readyState |
上图是打开sina首页,正在打开的状态及QTP输出的readySta值。如果首页已完全打开返回的值应为Complete。
可以通过readyState返回的状态值,判断进行后续操作。readyState的可能值如下(中英):
There are five possible values for readyState:
0 (Uninitialized): The object has been created but the open() method hasn’t been called.
1 (Loading): The open() method has been called but the request hasn’t been sent.
2 (Loaded): The request has been sent.
3 (Interactive). A partial response has been received.
4 (Complete): All data has been received and the connection has been closed.
readyState有五种可能的值:
0 (未初始化): (xml(标准化越来越近了)HttpRequest)对象已经创建,但还没有调用open()方法。
1 (载入):已经调用open() 方法,但尚未发送请求。
2 (载入完成): 请求已经发送完成。
3 (交互):可以接收到部分响应数据。
4 (完成):已经接收到了全部数据,并且连接已经关闭。
6. 利用QTP自带的检查点
这种方式就是在脚本中插入Checkpoint进行相应检查,包括文本、图片、对象属性等,在录制过程或是录制完毕选择Insert—Checkpoint按提示操作即可,QTP会自动生成代码。由于QTP可以自动生成代码,在此不再贴出示例。
以上是几种方法,如果各位朋友还有其他方法,希望贴出来大家学习。
版权声明:原创作品,转载时请务必以超链接形式标明文章原始出处 、作者信息和本声明,否则将追究法律责任。本文出自jifeng的51Testing软件测试博客: http://www.51testing.com/?92935
相关阅读: