• QTP(8)


    一、Action
      1、调用Action
        C:Program FilesHPQuickTest ProfessionalCodeSamplesPlusFlight_Samples
        (1)调用Action的操作步骤:
          a.在Keyword View中,右击Action选择InsertCall to Existing Action(插入已经存在的Action)
          b.From Test:选择调用哪个Test的Action
          c.Action :选择要调用哪个Action
          d.Location
            At the end of the test:放在Test之后,与默认Action1为兄弟关系
            After current step:放在Action里面,与Action嵌套,跟Action为父子关系
        (2)说明:
          a.只有可复用(Reusable Action)才能被调用,不可复用Action不能被调用
          b.调用来的Action不能修改,可以运行和查看
        (3)注意事项:
          a.注意调用来的Action与前后Action的衔接性
          b.如果调用的Action做为当前Test的第一个Action,要注意被测系统的启动方式

      2、Action的分类:
        (1)可复用Action:Reusable Action,可以被其他Test调用
        (2)不可复用Action:Non-Reusable Action,不可用被其他Test调用,但可以被复制
        (3)外部Action:External Action,从其他Test调用来的Action,不可用修改

      3、复制Action
        (1)复制Action的步骤:
          a.在Keyword view中右击Action选择Insert call to copy of Action (复制Action)
          b.From Test:选择从哪个Test复制
          c.Action:选择复制哪个Action
          d.Edit new Action Properties:选择是否修改复制来的Action的属性
          e.Location:选择位置
            At the end of the test:放在Test之后,与默认Action1为兄弟关系
            After current step:放在Action里面,与Action嵌套,跟Action为父子关系
        (2)说明:
          a.可复用和不可复用的Action都可以被复制
          b.复制会生成新的Action,新的Action可以进行编辑


      4、分割Action
        (1)分割Action的步骤:
          a.把光标定位在拆分后的第二个Action第一行代码最前面
          b.点击Edit->Action->Split Action(分割Action)
          c.如果当前Action是可复用Action,会提示是否拆分,点击"是"
          d.如果当前代码未保存,会提示是否保存,点击"是"
          e.在Split Action属性框中设置属性:
            --选择Action拆分后的关系
              Independent of each other:兄弟关系
              Nested:父子关系,嵌套
            --设置第一个Action的Name名称、Description描述
            --设置第二个Action的Name名称、Description描述
        (2)说明:
          a.不建议录制后分割Action,建议录制时分Action录制
          b.分割时一次只能分割2个Action
          c.分割后想恢复代码,就把分割后的代码剪切到一个Action即可

          练习1:Mtours
            Test001:录制可复用的2个Action(登录、退出)

    ’登录Action
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "mercury"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a5c5b45e4926063ac528f28"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 19,6
    ’退出Action
    Browser("Find a Flight: Mercury").Page("Find a Flight: Mercury").Image("sign-off").Click
    Browser("Find a Flight: Mercury").Page("Sign-on: Mercury Tours").Sync
    Browser("Find a Flight: Mercury").Close

            Test002:录制不可复用的2个Action(登录、退出)

    ’登录Action
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "mercury"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a5c5c0bb7a40d133b4795a4"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 19,6
    ’退出Action
    Browser("Find a Flight: Mercury").Page("Find a Flight: Mercury").Image("sign-off").Click
    Browser("Find a Flight: Mercury").Page("Sign-on: Mercury Tours").Sync
    Browser("Find a Flight: Mercury").Close

            Test003:录制可复用的1个Action(包括登录+购票+退出),分割为3个Action

    ’登录Action
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "mercury"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a5c5ca797dc504f32dcbccb"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 10,5
    ’购票Action
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromPort").Select "London"
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("toPort").Select "Paris"
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("findFlights").Click 66,9
    Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").Image("reserveFlights").Click 44,6
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Set "abc"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passLast0").Set "abc"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("creditnumber").Set "123"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").Image("buyFlights").Click 63,10
    ’退出Action
    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

            Test004:调用Test001的登录Action,调用Test003的购票Action,调用Test001的退出Action

    Call RunAction("登录 [Test001AAA]", oneIteration)
    Call RunAction("购票 [Test003CCC]", oneIteration)
    Call RunAction("退出 [Test001AAA]", oneIteration)
    

      

            Test005:复制Test001的登录Action,复制Test003的购票Action,复制Test002的退出Action

    ’登录Action
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("userName").Set "mercury"
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").WebEdit("password").SetSecure "5a5c5b45e4926063ac528f28"
    
    
    Browser("Welcome: Mercury Tours").Page("Welcome: Mercury Tours").Image("Sign-In").Click 19,6
    a.操作方法:Click
    b.操作的对象:Sign-In
    c.操作使用的参数:19,6
    d.操作对象的类型:Image
    e.父对象:Welcome: Mercury Tours
    f.父对象的类型:Page
    g.参数个数:2
    g.参数个数:2
    ’购票Action
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("fromPort").Select "London"
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").WebList("toPort").Select "Paris"
    Browser("Welcome: Mercury Tours").Page("Find a Flight: Mercury").Image("findFlights").Click 66,9
    Browser("Welcome: Mercury Tours").Page("Select a Flight: Mercury").Image("reserveFlights").Click 44,6
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passFirst0").Set "abc"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("passLast0").Set "abc"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").WebEdit("creditnumber").Set "123"
    Browser("Welcome: Mercury Tours").Page("Book a Flight: Mercury").Image("buyFlights").Click 63,10
    ’退出Action
    Browser("Find a Flight: Mercury").Page("Find a Flight: Mercury").Image("sign-off").Click
    Browser("Find a Flight: Mercury").Page("Sign-on: Mercury Tours").Sync
    Browser("Find a Flight: Mercury").Close

    --------------------------------------------------------------------------------------------------------------------------------------------------

    QTP高级
    一、解读Expert View专家视图的代码
      1、专家视图的一行代码可以是:
        a.录制好的一个操作步骤
        b.一个VBS函数,如wait
        c.一个VBS语句,如if 、 for 、 do loop
        d.一行注释


      2、解读录制好的一个操作步骤的语法格式
        Dialog("Login").WinEdit("Agent Name:").Set "abcd"
        (1)每个对象的描述格式:对象类型("对象名称"),如:Dialog("Login")
          区("朝阳")
          国家("中国")
        (2)操作对象和操作方法使用 . 连接(英文状态下的点)
        (3)操作方法和参数之间使用空格分割
        (4)多个参数使用逗号分割
        (5)父对象与子对象使用 . 分割
        (6)描述对象是从顶级对象开始描述


    3、解读案例:
      Dialog("Login").WinEdit("Agent Name:").Set "abcd"
        a.操作方法:Set
        b.操作的对象:Agent Name:
        c.操作使用的参数:"abcd"
        d.操作对象的类型:WinEdit输入框
        e.父对象:Login
        f.父对象的类型:Dialog对话框
        g.参数个数:1个

      Dialog("Login").WinButton("Cancel").Click
        a.操作方法:Click
        b.操作的对象:Cancel
        c.操作使用的参数:没有
        d.操作对象的类型:WinButton
        e.父对象:Login
        f.父对象的类型:Dialog
        g.参数个数:0

      叫北京的张三来上课
        城市("北京").学生("张三").上课 "QTP"


    4、常用的Windows控件的类型及其常用方法
      控件类型 控件方法
      (1)WinEdit文本框---Set "值"
        SetSecure "加密值"
        Type "值"
      (2)WinButton按钮---Click
      (3)WinComboBox下拉框组合框---Select "选项内容"、Select 选项编号,编号是数字,从0开始
      (4)WinList列表框---Select "选项内容"、Select 选项编号,编号是数字,从0开始
      (5)WinRadioButton单选按钮---Set 注意:Set 后面没有参数
      (6)WinCheckBox复选框---Set "ON" 选中、Set "OFF" 未选中
      (7)ActiveX---Type "值"
      (8)Window窗口---Close、Activate激活
      (9)Dialog对话框---Close
      (10)Static静态---Click
      (11)WinMenu菜单---Select "一级;二级;三级"
      (12)WinObject无法识别的控件对象---Type "值"、Click

        Window("计算器").WinButton("1").Click
        Window("计算器").WinButton("1").Click
        Window("计算器").WinButton("+").Click

  • 相关阅读:
    EF写in
    1707. [Usaco2007 Nov]tanning分配防晒霜
    BZOJ 1706. [usaco2007 Nov]relays 奶牛接力跑
    1705. [Usaco2007 Nov]Telephone Wire 架设电话线
    BZOJ1704. [Usaco2007 Mar]Face The Right Way 自动转身机
    Codeforces Manthan, Codefest 19 (open for everyone, rated, Div. 1 + Div. 2)
    BZOJ1702. [Usaco2007 Mar]Gold Balanced Lineup 平衡的队列
    P2876 [USACO07JAN]解决问题Problem Solving
    BZOJ 1908. Pku2054 UVA1205 Color a Tree
    P4280 [AHOI2008]逆序对
  • 原文地址:https://www.cnblogs.com/KalosOwen/p/8642147.html
Copyright © 2020-2023  润新知