Test3001_Flight4a_手动启动录制购票

(VBS脚本)
Window("Flight Reservation").WinObject("Date of Flight:").Click 1,7
Window("Flight Reservation").WinObject("Date of Flight:").Type "111119"
Window("Flight Reservation").WinComboBox("Fly From:").Select "London"
Window("Flight Reservation").WinComboBox("Fly To:").Select "Paris"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "12582 LON 08:00 AM PAR 10:00 AM AF $164.00"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Set "Rose"
Window("Flight Reservation").WinEdit("Tickets:").SetSelection 0,1
Window("Flight Reservation").WinEdit("Tickets:").Set "3"
Window("Flight Reservation").WinRadioButton("First").Set
Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").WinButton("Button").Click Window("Flight Reservation").WinButton("Button_2").Click
Window("Flight Reservation").Dialog("Open Order").WinCheckBox("Order No.").Set "ON"
Window("Flight Reservation").Dialog("Open Order").WinEdit("Edit").Set "5"
Window("Flight Reservation").Dialog("Open Order").WinButton("OK").Click

一、补充:补录
  1、把需要补录的操作对象显示在被测系统上
  2、把光标定位在代码中需要补录的位置
  3、点击菜单栏Automation(自动化)->Record and Run Settings,选择第一个单选按钮(手动启动被测系统)
  4、点击Record按钮,开始录制需要的步骤,把需要的步骤录制完后,点击Stop停止录制
测试用例:
  1、输入用户名 XXXX
  2、输入密码
  3、ok
  4、打开订单
  5、关闭系统

二、使用QTP测试Flight、web系统
  1、录制测试脚本
    (1)启动被测系统的方式
      1) 自动启动web程序
      2) 自动启动web程序的步骤:
        a.录制和回放前要关闭:
          --IE浏览器(QTP10.0只能使用IE浏览器录制)
          --防病毒软件
          --翻译类软件
        b.打开QTP,选择web插件,创建一个脚本,点击Record开始录制
        c.设置Record and run Settings(录制和回放设置)
          --其他选项卡选择第一个单选钮
          --web选项卡选择第二项Open the follwing address when a record or run session begins(当录制和回放时打开下面指定的路径)
          --指定被测系统的URL地址
          ----------------------------------------------------------------------------------------------------------------------------------------
          Open the following browser when a run session beging:当运行时启动下面的浏览器
          Do not record and run on browsers that are already open:不要在已经打开的浏览器上运行或者录制
          Close the browser when the test closes:当测试脚本关闭时,关闭浏览器(被QTP打开的)
          ----------------------------------------------------------------------------------------------------------------------------------------
        注意:如果第一次录制Web程序,QTP会弹出提示是否开启第三方扩展,点击"Yes",再重新录制
      d.根据测试用例步骤录制代码,需要录制关闭浏览器操作
      e.点击Stop,保存脚本,回放,查看结果
        注意:web系统不建议使用使用手动启动方式录制,如果需要手动启动,就自己编写启动系统的代码

    练习2:Mtours(自动启动方式)
      要求:a.录制Mtours系统的登录+购票+购票+退出业务流程
        London->Zurich
        Portland->Paris
        其他内容自己选择

      Test3003_Mtours_自动启动录制登录+购票+购票+退出

(VBS脚本)
'登录被测系统
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "Mercury"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a530a9bb8e27d06f1ce655e"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 20,8
'第一次购票
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebRadioGroup("tripType").Select "oneway"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("passCount").Select "4"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromPort").Select "London"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebRadioGroup("servClass").Select "Business"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("findFlights").Click 46,9
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("outFlight").Select "Blue Skies Airlines$91$201$7:07 pm$"
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").Image("reserveFlights").Click 69,8
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Set "qwe"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passLast0").Set "wqe"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("creditnumber").Set "124354"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").Image("buyFlights").Click 80,9
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury").Image("Flights").FireEvent "onmouseover"
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury").Image("Flights").Click
'第二次购票
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury_2").WebList("fromPort").Select "Portland"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury_2").WebList("toPort").Select "Paris"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury_2").WebRadioGroup("servClass").Select "First"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury_2").Image("findFlights").Click 69,12
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("outFlight").Select "Pangea Airlines$542$624$9:21 pm$"
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").WebRadioGroup("inFlight").Select "Unified Airlines$453$643$18:50 pm$"
Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").Image("reserveFlights").Click 48,18
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Set "gfdg"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passLast0").Set "fsadfd"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("creditnumber").Set "43545"
Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").Image("buyFlights").Click 69,16
'退出系统关闭浏览器
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury").Image("sign-off").FireEvent "onmouseover"
Browser("Welcome: Mercury Tours").Page("Flight Confirmation: Mercury").Image("sign-off").Click
Browser("Welcome: Mercury Tours").Page("Sign-on: Mercury Tours").Sync
Browser("Welcome: Mercury Tours").Close

      登录+购票+退出
      购票
      登录+购票+购票+退出
      London->Zurich
      Portland->Paris

    练习3:Mtours(自动启动方式)
    要求:a.录制Mtours系统的登录+查询订单+退出业务

    Test3004_Mtours_自动启动录制登录+查询订单+退出

(VBS脚本)
'登录被测系统
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "Mercury"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a530f51d10f7eb5bedc84ae"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 28,13
'查询订单
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("itinerary").FireEvent "onmouseover"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("itinerary").Click
'关闭系统退出浏览器
Browser("Welcome: Mercury Tours").Page("Itenerary: Mercury Tours").Image("sign-off").FireEvent "onmouseover"
Browser("Welcome: Mercury Tours").Page("Itenerary: Mercury Tours").Image("sign-off").Click
Browser("Welcome: Mercury Tours").Page("Sign-on: Mercury Tours").Sync
Browser("Welcome: Mercury Tours").Close

三、QTP的实现原理(录制回放原理)
  1、录制时:
    a.QTP会自动把测试人员对被测系统执行操作的对象封装到对象库中(测试人员操作了哪个对象就封装哪个对象)
    b.把操作形成脚本,记录在Keyword View和Expert View中

  2、回放时:
    a.根据代码描述的对象去对象库中查找对象,根据对象库中记录的对象属性及属性值去跟被测系统的对象进行对比,找到属性值一致的对象
    b.根据脚本中记录的操作动作,对被测系统的对象进行操作

    练习5:计算器(自动启动)
    要求:a.录制计算器的加法过程
    测试用例:
      a.打开被测系统
      b.点击按钮"5"
      c.点击按钮"+"
      d.点击按钮"2"
      e.点击按钮"="
      f.退出被测系统

      Test3005_计算器_添加对象

(VBS脚本)
'Window("计算器").WinButton("5").Click
'Window("计算器").WinButton("7").Click
Window("计算器").WinButton("9").Click
Window("计算器").WinButton("*").Click
Window("计算器").WinButton("0").Click
Window("计算器").WinButton("=").Click
Window("计算器").Close

3、常见回放错误:
  (1)The "XXX" XXX object was not found in the Object Repository.(在对象库中未找到对象)
    object:对象
    not found:未找到
    Repository:库
    原因:在对象库中未找到对象
    解决方案:添加对象动对象库
      方法一:录制时对对象进行操作
      方法二:通过Object Repository(对象库Ctrl+R)添加
        a.打开被测系统,把需要添加的对象显示在界面中
        b.在QTP中打开对象库Ctrl+R
        c.在对象库中点击加号按钮(Add Objects to Local)
        d.使用手型鼠标点击待添加的对象
          注意:如果被测系统被遮挡,就按住Ctrl键的同时把被测系统操作显示出来,再释放Ctrl键,再点击待添加的对象
        e.在Object Selection对话框中确认是不是要添加的对象,确定
    练习5:Flight4a(自动启动)
    要求:

      a.录制Flight4a的登录+退出流程

      b.录制完后在输入用户名步骤后添加点击Help按钮的操作
        1 输入用户名
        2 点击"Help"按钮
        3 点击"确认"按钮
        4 输入密码
        5 点击 "OK"按钮
        6 退出系统

    
      Test3006_Flight4a_添加Help对象

(VBS脚本)
Dialog("Login").WinEdit("Agent Name:").Set "abcd"
'点击"Help"按钮
Dialog("Login").WinButton("Help").Click
'点击"确认"按钮
Dialog("Login").Dialog("Flight Reservations").WinButton("确定").Click
Dialog("Login").WinEdit("Password:").SetSecure "5a532d747cbe92bf204ca3ef988bdaacae403daa"
Dialog("Login").WinButton("OK").Click
Window("Flight Reservation").Close

    练习6:两位数加法器
    要求:

      a.录制两位数加法器加法过程,录制时点击叉按钮关闭系统

      b.在录制好的代码计算后中添加
        --点击"重置"按钮
        --点击"退出"按钮
        1 输入第一个数
        2 输入第二个数
        3 点击"计算"按钮
          --点击"重置"按钮
          --点击"退出"按钮
        4 点击叉号按钮

      Test3007_两位数加法器_添加对象

(VBS脚本)
VbWindow("Form1").VbEdit("Text1").Set "23"
VbWindow("Form1").VbEdit("Text2").Set "56"
VbWindow("Form1").VbButton("计算(J)").Click
VbWindow("Form1").VbButton("重置(C)").Click
VbWindow("Form1").VbButton("退出(E)").Click
VbWindow("Form1").Dialog("退出提示").WinButton("确定").Click
'运行代码之前需要关闭被测系统 VbWindow("Form1").Close

    练习7:Flight4a
      要求:

        a.录制Flight4a登录+购票+退出业务
        b.在输入顾客姓名后,添加步骤,输入Tickets为3
        c.回放代码时,使用Flight3a进行回放,并且把脚本调试通过

      测试用例:
        a.打开被测系统(QTP打开)
        b.输入用户名:abcd
        c.输入密码:mercury
        d.点击"OK"按钮
          等一会儿wait 8
        e.输入日期:111219
        f.选择起飞城市:London
        g.选择到达城市:Denver
        h.点击Flights按钮
        i.点击"OK"按钮
        j.输入顾客姓名:Jack
        k.点击"Insert Order"按钮
        l.关闭被测系统
        Test3008_Flight4a_添加Tickets对象

(VBS脚本)
Dialog("Login").WinEdit("Agent Name:").Set "abcd"
Dialog("Login").WinEdit("Agent Name:").Type micTab
Dialog("Login").WinEdit("Password:").SetSecure "5a533bbdaef2d2a3a6b4c9b9a88f82396988e00e"
Dialog("Login").WinButton("OK").Click
'等一会儿,模拟被测系统加载的过程
wait 6
Window("Flight Reservation").ActiveX("MaskEdBox").Type "111219"
Window("Flight Reservation").WinComboBox("Fly From:").Select "Denver"
Window("Flight Reservation").WinComboBox("Fly To:").Select "Los Angeles"
Window("Flight Reservation").WinButton("FLIGHT").Click
Window("Flight Reservation").Dialog("Flights Table").WinList("From").Select "5988 DEN 01:45 PM LAX 02:42 PM AA $123.60"
Window("Flight Reservation").Dialog("Flights Table").WinButton("OK").Click
Window("Flight Reservation").WinEdit("Name:").Set "Jack" Window("Flight Reservation").WinEdit("Tickets:").Set "3" Window("Flight Reservation").WinButton("Insert Order").Click
Window("Flight Reservation").Close

3、Mtours系统介绍
  (1)Mtours是web系统(B/S系统)
    a.启动服务
    b.在浏览器中输入URL地址进行访问,Mtours的默认端口号是8080
    c.注册:点击首页的REGISTER,输入必填项,用户名、密码、确认密码
    d.登录:输入用户名、密码进行登录
    e.购票:分为3个页面
      --选择票的信息
      --选择航班
      --填写个人信息,只需要填写必填项
    f.退出

    练习1:Mtours
    要求:a.使用自动启动的方式,录制Mtours系统的登录+退出业务
    测试用例:
      a.打开被测系统(QTP给启动)
      b.输入用户名:Mercury
      c.输入密码:123
      d.点击"Sign-In"按钮登录
      e.点击"SIGN-OFF"按钮退出
      f.关闭浏览器

      Test3002_Mtours_自动启动录制登录

(VBS脚本)
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "Mercury"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a52e3140435c0ad9106ac27"
Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 26,12
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("sign-off").FireEvent "onmouseover"
Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("sign-off").Click
Browser("Welcome: Mercury Tours").Page("Sign-on: Mercury Tours").Sync
Browser("Welcome: Mercury Tours").Close

QTP(3)的更多相关文章

  1. QTP(16)

    一.QTP项目(ECShop) 1.ECShop是一个开源免费的一个B2C的电子商务系统,主要用于商家和顾客进行商品交易操作. 2.ECShop分为前台和后台两个子系统: (1)ECShop前台:顾客 ...

  2. QTP(14)

    练习1.Flight4a 要求: a.录制Flight4a登录+退出业务流程 b.使用自定义检查结合Exist属性验证登录是否成功 c.为用户名实现参数化 用户名 Jack 正确 Rose 正确 12 ...

  3. QTP(13)

    练习1:Flight4a 要求: a.录制Flight4a登录+购票+退出业务流程 b.实现登录1次,购票3次,退出1次 c.对Fly From.Fly to.航班实现随机参数化 随机参数化:Rand ...

  4. QTP(12)

    练习:录制两位数加法器加法计算后退出的步骤,对两个加数做随机数参数化,随机数范围是0-50,在计算后获得被测系统计算的结果,判断如果结果等于100,msgbox提示“满分”,如果结果在80和99之间, ...

  5. QTP(10)

    一.VBS语言基础 1.运算符和表达式 (1)运算符 (2)表达式 a.数学表达式:由算术运算符连接,计算结果为数字 b.字符串表达式:由字符串连接符连接,计算结果为字符串 c.条件表达式:由关系运算 ...

  6. QTP(9)

    常用的Windows控件 WinEdit---Set "数据值" SetSecure "加密数值" WinButton---Click WinComboBox- ...

  7. QTP(8)

    一.Action 1.调用Action C:\Program Files\HP\QuickTest Professional\CodeSamplesPlus\Flight_Samples (1)调用A ...

  8. QTP(7)

    一.输出值(Output Value) 1.应用场景: 1) 关心被测系统的数据 2) 将被测系统生成的数据作为后面步骤的输入 2.输出值就是输出被测系统中实际运行时的数据的一种技术 a.运行中对象的 ...

  9. QTP(6)

    一.检查点 1.标准检查点(Standard Checkpoint) 作用:检查对象的属性值是否正确 文本框对象:text 预期值 单选按钮对象:checked ON/OFF 下拉框对象:Select ...

  10. QTP(5)

    一.检查点 1.位图检查点(Bitmap CheckPoint) (1)作用:主要用于检查UI界面,检查页面布局,包括控件位置.大小.颜色.状态等 (2)确定位图检查点的要素: a.检查哪个控件 b. ...

随机推荐

  1. 这可能是你少有的能get到测试用例编写精髓的机会!

    自动化测试用例的编写是实现项目自动化的核心,合理的用例设计是保证自动化效益和实用性的关键,也直接决定了自动化脚本是否具备可扩展和可维护性.由此,本篇文章主要为大家介绍了测试用例编写的规范和注意事项. ...

  2. 【CSS】如何在一个页面中引入样式css

    CSS(Cascading Style Sheet)又叫层叠样式表.是我们学习前端必不可少的一门语言,学习它其实就是为了学会如何去更改页面标签的样式.目前使用最广的是css3,但同样的,他是从css2 ...

  3. k8s 工具集

    Volcano 资源调度器 apollo 配置中心 spinnaker 持续部署系统 jaeger 分布式跟踪系统.它用于监视和诊断基于微服务的分布式系统,包括: 分布式上下文传播 分布式交易监控 根 ...

  4. JavaScript校验身份证,包含省份、长度、出生年月日、校验位的检测、性别、年龄

    一.代码如下 let vcity = {11: '北京', 12: '天津', 13: '河北', 14: '山西', 15: '内蒙古', 21: '辽宁', 22: '吉林', 23: '黑龙江 ...

  5. c++ static_cast和dynamic_cast详解

    注:从图中可以看出,派生类不仅有自己的方法和属性,同时它还包括从父类继承来的方法和属性.当我们从派生类向基类转换时,不管用传统的c语言还是c++转换方式都可以百分百转换成功.但是可怕是向下转换类型,也 ...

  6. android带参和不带参的页面跳转形式

    FActivity.java package com.example.demo06; import android.app.Activity;import android.content.Contex ...

  7. 基于JAVA Socket的底层原理分析及工具实现

    前言 在工作开始之前,我们先来了解一下Socket 所谓Socket,又被称作套接字,它是一个抽象层,简单来说就是存在于不同平台(os)的公共接口.学过网络的同学可以把它理解为基于传输TCP/IP协议 ...

  8. jumpserver跳板机(堡垒机)安装

     jumpserver跳板机(堡垒机) Jumpserver 是一款由Python编写开源的跳板机(堡垒机)系统,实现了跳板机应有的功能,基于ssh协议来管理,客户端无需安装agent,助力互联网企业 ...

  9. 我的第一个Java博客

    1.2019 11.23 Alone in Beijing;

  10. 洛谷P1603 斯诺登的密码(水题

    不知道什么时候打开的,随手做掉了,没什么用...大概又熟悉了一下map吧...大概........一开始还因为没读清题没把非正规的英文表示数字存进去wa了...orz最近状态不行 题目描述 题目描述 ...