51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

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

[原创] QTP入门学习总结1

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2013-1-7 12:41:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 黑羽祭 于 2013-1-7 14:57 编辑

12月份,因为暂时没有分到开发任务,就兴趣研究了QTP,先是看了好多测试方面理论性的帖子,也收藏了不少。自己着手在官方上下载了QTP11,当然是试用的,但这不影响我们学习,
学习的时候一般用到:QTP11,记事本工具(遇到的问题及时记下来),截图工具。
安装完毕后,打开程序(按默认的选项打开)。
1,新建一个test
2,在Automation属性中选择Record and Run Settings
3,由于我们用到的demo是QTP自带的flight(在线购票系统),我们要在 windows app...选项卡下选择程序路径(如果开始录制输入用户名和密码无法登陆,报没有权限的错误,也可以通过代码加在你的脚本上,
  1. SystemUtil.Run PathFinder.Locate("D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe"),"",PathFinder.Locate("D:\Program Files\HP\QuickTest Professional\samples\flight\app"),"open"        ' 打开程序
复制代码
就不用选择路径选择,选第一个选项即可)
,注意(QTP11在同菜单web选项卡中,有个默认的web在线航班,我们要选择Record.....这个选项卡,这样开开始录脚本的时候就不会弹出web,只会弹出flight的客户端登陆界面)
4,设置好后,在工具条下点击Record录像按钮,在用户名密码处输 mercury mercury 会登陆到机票订单明细页面 点击stop.停止录像。
5,我个人是在这步停了停,发现action中的密码是密文的,就在专家模式下修改,按照上一行登录名的 写法,改成Set("mercury"),点击回放也可以成功,在keword view模式下也是可以设置的,比如:参数化。
6,参数化脚本后这里需要对前台密码和登陆名的验证发送到测试报告中,这里用到 Reporter,Dialog(注:F1是个很好用的玩意,不懂的函数都可以去里面查一下,然后看的实例是怎么用的),以及把对添加到对象库中。(对象不能重名)
  1. If Dialog("Login").Dialog("Flight Reservations").Exist(10)    then
  2.                 '错误的用户名,密码无法登陆,动态捕获对象。
  3.                 Dim err_message
  4.                 err_message =Dialog("Login").Dialog("Flight Reservations").Static("Agent name must be at").GetROProperty("text") '捕获对象
  5.                   reporter.ReportEvent micFail,"登录验证error","错误信息是:"&err_message '后台输出错误信息
  6.                   Dialog("Login").Dialog("Flight Reservations").WinButton("确定").Click
  7.                   Dialog("Login").WinButton("Cancel").Click
  8.         else  '捕捉不到登陆失败的弹窗
  9.                 reporter.ReportEvent micPass,"登录验证success","验证成功"
  10.                 '为了使其他脚本能够调用此脚本,注释掉成功后关闭程序的代码
  11.                 Window("Flight Reservation").Close
  12.         end if
复制代码
7,重新回放脚本
  1. SystemUtil.Run PathFinder.Locate("D:\Program Files\HP\QuickTest Professional\samples\flight\app\flight4a.exe"),"",PathFinder.Locate("D:\Program Files\HP\QuickTest Professional\samples\flight\app"),"open"        ' 打开程序
  2. Dialog("Login").WinEdit("Agent Name:").Set DataTable("userName", dtLocalSheet)        ' 输入用户名
  3. Dialog("Login").WinEdit("Password:").Set DataTable("passWord", dtLocalSheet)        ' 输入密码
  4. Dialog("Login").WinButton("OK").Click        ' 点击OK
  5.         If Dialog("Login").Dialog("Flight Reservations").Exist(10)    then
  6.                 '错误的用户名,密码无法登陆,动态捕获对象。
  7.                 Dim err_message
  8.                 err_message =Dialog("Login").Dialog("Flight Reservations").Static("Agent name must be at").GetROProperty("text") '捕获对象
  9.                   reporter.ReportEvent micFail,"登录验证error","错误信息是:"&err_message '后台输出错误信息
  10.                   Dialog("Login").Dialog("Flight Reservations").WinButton("确定").Click
  11.                   Dialog("Login").WinButton("Cancel").Click
  12.         else  '捕捉不到登陆失败的弹窗
  13.                 reporter.ReportEvent micPass,"登录验证success","验证成功"
  14.                 '为了使其他脚本能够调用此脚本,注释掉成功后关闭程序的代码
  15.                 Window("Flight Reservation").Close
  16.         end if


复制代码
完成,查看测试报告和预期的一样。
此文章完全是个人总结,只是串了注意点。其中省略的部分细节比如如何控制action的迭代次数。记录问题,寻找答案,写总结,是个很好的学习方式和大家分享。希望志同道合的朋友一起努力。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x

评分

参与人数 1综合技术指数 +10 收起 理由
黑羽祭 + 10 支持原创经验分享。

查看全部评分

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2013-1-7 14:59:14 | 只看该作者
    支持这样的原创好帖~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2013-1-7 17:37:14 | 只看该作者
    回复 2# 黑羽祭


        那你能帮我去掉么?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    4#
    发表于 2013-1-7 17:52:45 | 只看该作者
    回复 3# 154957012


        已经去掉了付费查看了
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-23 03:50 , Processed in 0.081144 second(s), 31 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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