51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1859|回复: 3
打印 上一主题 下一主题

[原创] QTP脚本例子汇总

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2008-8-27 09:39:53 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式


例一:
       以下语句指示 QuickTest 选中 Itinerary 网页上的所有复选框:
       Set MyDescrīption = Descrīption.Create()
       MyDescrīption("html tag").Value = "INPUT"
       MyDescrīption("type").Value = "checkbox"
       Set Checkboxes = Browser("Itinerary").Page("Itinerary").ChildObjects(MyDescrīption)
       NoOfChildObjs = Checkboxes.Count
       For Counter=0 to NoOfChildObjs-1
       Checkboxes(Counter).Set "ON"
       Next

       例二:
       目标如下:
       1.   脚本需要处理成功和失败的用户的登陆
       2.  数据驱动
       设计开发脚本如下:
       第一步录制脚本如下
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "吕巍"
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""
       Browser("智能变电巡检仪系统 4.0").Page("Page").Syn
       Browser("智能变电巡检仪系统 4.0").Close

       以上为录制的正确的用户名,下边录制错误的用户名
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set "xx"
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set ""

       出现错误提示“该用户不存在”
       第二步 增强脚本
       现在需要设计的是一套脚本驱动所有的测试数据,这样可以驱动所有的用例数据,qtp中提供了datatable。
       但是有数据驱动也要做一个事情就是如何处理错误的用户名和正确的用户名,如何结合起来呢?
       这里我把datatable看作存放测试用例的地方,里面放入测试数据,还放入测试的预期结果。这样我的设计已经出现雏形了。
       我把datatable设计为三列
       username password status
       吕x
       xxx      xxxx    该用户不存在

       第三列放入最后执行的结果,我设计的是空为成功登陆,如果有信息就用实际运行的结果和这一列对比.好了万事俱备只欠东风了
       修改脚本如下:
       Dim iStatus
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set DataTable("username", dtLocalSheet)
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").set DataTable("password", dtLocalSheet)
       iStatus = DataTable("status", dtLocalSheet)
       If  iStatus="" Then
         Browser("智能变电巡检仪系统 4.0").Close
       End If
       If  iStatus="该用户不存在"   Then
            Reporter.ReportEvent micFail, "登陆", "登陆失败."
       End If
       Browser("智能变电巡检仪系统 4.0").Close

       第三步,设置脚本运行过程
       打开 tests-〉settings
       设置RUN TAB页面下 Datatable iterations中 Run On all rows
       这样就完成了整个脚本的设计工作,以上通过一个简单例子吧脚本的设计和软件的功能结合起来,达成脚本的设计效果。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2008-8-27 15:47:40 | 只看该作者
代码错误,修改如下:
Dim iStatus
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginName").Set DataTable("username", dtLocalSheet)
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebEdit("txtLoginPassword").Set DataTable("password", dtLocalSheet)
       Browser("智能变电巡检仪系统 4.0").Page("智能变电巡检仪系统 4.0").WebButton("登 录").Click
if  登陆成功 then
      DataTable.value("iStatus ",dtLocalSheet) = ""
else
      DataTable.value("iStatus ",dtLocalSheet) = "该用户不存在"
End if
       iStatus = DataTable("status", dtLocalSheet)
       If  iStatus="" Then
         Browser("智能变电巡检仪系统 4.0").Close
       End If
       If  iStatus="该用户不存在"   Then
            Reporter.ReportEvent micFail, "登陆", "登陆失败."
       End If
       Browser("智能变电巡检仪系统 4.0").Close
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2008-8-27 16:42:56 | 只看该作者
没办法验证登录用例是否执行成功
给datatable赋值,变量=datatable,判断变量的值是否等于datatable的值,能说明什么?
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2008-9-8 16:27:51 | 只看该作者
有没有将外部数据导入数据库的脚本啊??
回复 支持 反对

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-28 09:29 , Processed in 0.067612 second(s), 24 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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