一、概念
  1、什么是软件测试?
    使用人工或者自动手段来运行或者测试某个软件的过程,其目的在于检验程序是否满足需求规格说明书或者弄清实际结果与预期结果之间的差异。

    (1)软件(程序+文档+数据)测试
    (2)软件测试工程师
      1)需求分析-->测试计划->测试方案-->测试用例(脚本)-->环境搭建-->执行测试-->跟踪缺陷-->自动化测试-->性能测试-->安全测试-->渗透测试
      2)做手工测试如何提高薪资,需要做到如何预防
        a.需求管理 质量管理(流程、技术、组织) 缺陷管理
      3) 做自动化测试提高薪资

    (3)软件测试的目的:
      1) 证明(表明软件能够工作)
      2) 检测(发现错误)
      3) 预防(管理质量)
    (4)软件由来
      需求分析-->概要设计-->详细设计-->编码-->测试-->运维

  2、什么是功能测试?
    根据测试用例逐一对现有的软件功能进行验证的过程,验证软件的各项功能是否满足用户需求。
    12306(购票:注册、登录、选择城市、选择日期、选择列车号、提交订单、填写信息、付款、查看订单......)
    QQ(社交:注册、登录、发送信息功能、空间、上传照片......)

  3、什么是自动化测试?
    指利用工具(QTP、Selenium)在没有人或者较少人参与的情况下,根据人的要求(测试用例)来完成测试的过程。
    没有人:代码已经写好了,QTP工具去执行测试
    较少人参与:代码执行的过程中需要执行其他操作
    登录
      1、输入用户名(工具输入)
      2、输入密码(工具输入)
      3、输入验证码(手动输入)
      4、点击登录(工具点击)

  4、什么是功能自动化测试(第3阶段的内容)?
    利用工具来测试系统功能的过程。

  5、为什么要实现功能自动化测试?
    功能测试过程中存在大量的回归测试、大数据量测试
    自动化测试可以提高测试效率、测试准确性,可以进行更严格的测试,并且可以做到无人值守
    QQ:V1.0 V1.1 V2.0 .......

    登录
      name={正确的、错误的、不输入}
      passwd={正确的、错误的、不输入}
        1、输入用户名:name
        2、输入密码:passwd
        3、点击登录按钮

  6、什么时候需要执行自动化测试?
    a.需求稳定
    b.通过冒烟测试
    c.测试周期长

  7、如何执行功能自动化测试?(流程)
    使用测试工具QTP
      a.熟悉被测系统
      b.分析需求
      c.设计测试方案
      d.设计测试计划
      e.设计测试用例(脚本)
        --录制脚本(编写脚本、设计脚本)
        --增强脚本(控制流程语句、参数化、检查点、封装方法.....)
        --调试脚本
        --执行脚本
        --分析测试结果
        --编写测试结果报告

  8、自动化测试对测试工程师的影响
    a.薪资待遇更高
    b.提升竞争力
    c.自动化测试是一个重要的发展方向(功能自动化、性能测试、管理、QA、PM)

二、QTP介绍
  1、QTP是什么?
    a.QTP是功能自动化测试工具
    b.QTP使用的语言:VBS脚本语言
    c.QTP当前环境:10.0
      升级版本UFT14.01
      建议使用UFT12(支持手机测试)
    d.功能测试工具
      QTP(Quick Test Professional)
      Selenium(测试web系统的工具)
      QARun
      Robt
      TestWriter

  2、QTP插件管理
    1) 插件管理界面(Add-in Manager),默认安装QTP有三个插件:
      a.ActiveX:录制windows程序(如:计算器、记事本、画图),默认QTP是支持windows程序的
      b.Visual Basic:录制VB程序(如:两位数加法器)
      c.web:录制web程序(Mtours、Ecshop)
    2) 作用:QTP为了识别被测系统控件的一种技术
      常用的控件:
        a.输入框(Edit)--输入(Type、Set)
          WinEdit
          VBEdit
          WebEdit
        b.按钮(Button)--点击(Click)、回车(Enter)
        c.链接(Link)--点击(Click)
        d.复选框(CheckBox)--设置(Set)
        e.单选按钮(RadioButton)--设置(Set)
        f.下拉框(WinComboBox)--选择(Select)
        g.列表(List)--选择(Select)
        h.图片(Image)--点击(Click)
        i.窗口(Window)--最小化、最大化、关闭(Close)
        j.浏览器(Browser)--最小化、最大化、关闭(Close)
    3) 在测试过程中如何选择插件?
      a.由被测系统控件的实现技术来决定选择加载什么插件
      注意:
        a.如果使用QTP时选择了不必要的插件,QTP运行效率较低
        b.如果使用QTP时未选择必要的插件,QTP将无法识别被测系统的对象并对其进行操作(无法进行测试)
    4) 如果打开QTP时没有显示Add-in Manager对话框,可以进入QTP界面进行设置
      菜单栏Tools(工具)-->Options(选项)-->General(常规)-->Display Add-in Manager on startup(启动QTP时显示插件管理对话框),勾选为显示,反之不显示

      练习1:两位数加法器
        (1)录制两位数加法器的加法业务流程
          测试用例:
            1) 打开两位数加法器
            2) 在"第一个数"输入框(Edit)中输入:39 100 -99
            3) 在"第二个数"输入框(Edit)中输入:12 99 0
            4) 点击"计算(J)"按钮
            5) 关闭两位数加法器

            Ctrl+S:保存脚本
            Test1001_两位数加法器_录制回放(自动录制)

            

            

(VBS脚本)
VbWindow("Form1").VbEdit("Text1").Set "39"
VbWindow("Form1").VbEdit("Text2").Set "12"
VbWindow("Form1").VbButton("计算(J)").Click
VbWindow("Form1").Close

  3、QTP中的视图
    (1)Expert View(专家视图):以代码的形式记录测试人员在录制时对被测系统执行的操作步骤
    (2)Keyword View(关键字视图):以表格的形式记录测试人员在录制时对被测系统执行的操作步骤
      1) Item(项目):记录测试人员在录制时对被测系统操作的控件(对象)
      2) Operation(操作):对控件执行的操作,是点击操作,还是输入操作,还是关闭操作......
      3) Value(值):对可输入的控件输入的值,会有值的控件有输入框、下拉框、列表框、复选框
      4) Documentation(文档):描述测试步骤,可以导出保存为文档,跟测试用例的步骤一样
        注意:keyword View和Expert View中的操作是一一对应的,只是表现形式不一样
    (3)Active Screen(截图视图):保存测试人员在录制时对被测系统执行的操作步骤的截图,只保存录制时的截图
      a.如果视图不显示,可以进行设置
        Tools(工具)-->Options(选项)-->Restore Layout(重置视图)

      b.如果代码运行速度太快怎么办?
        Tools(工具)-->Options(选项)-->Run-->Run mode(运行模式)-->Delay each step execution by [] millisecondes(设置每句代码之间的间隔时间,单位:毫秒)
      c.如果想让结果报告中总是显示步骤截图怎么办?
        Tools(工具)-->Options(选项)-->Run-->
        Screen Capture(屏幕截图)--> Save still image capture to results(保存截图在结果中)-->选择Always,总是保存

        Agent Name:用户名 4-10为字符
        Password:密码 mercury

        手工测试(计算器):
          测试用例01:
            1、打开被测系统
            2、输入48
            3、点击"+"按钮
            4、输入23
            5、点击"="按钮
              预期结果:71

(VBS脚本)
VbWindow("Form1").VbEdit("Text1").Set "48"
VbWindow("Form1").VbEdit("Text2").Set "23"
VbWindow("Form1").VbButton("计算(J)").Click
VbWindow("Form1").Close

          测试用例02:
            1、打开被测系统
            2、输入4
            3、点击"*"按钮
            4、输入2
            5、点击"="按钮
              预期结果:8

QTP(1)的更多相关文章

  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. .NET中的简单的并行

    https://www.cnblogs.com/hdwgxz/p/6129419.html https://www.cnblogs.com/hueychan/p/10575907.html

  2. 关于Bootstrap Table使用生成冻结窗格的表格

    参考资料 : <JS组件系列——Bootstrap Table 冻结列功能IE浏览器兼容性问题解决方案> <http://issues.wenzhixin.net.cn/bootst ...

  3. python下对目录&文件的操作

    Windows桌面上: 总文件夹 子文件夹01 文档01.txt-------------------------------------------------------------------- ...

  4. 常用小技巧之PyCharm IDE

    Pycharm控制台窗口怎样可以显示不同程序的运行结果 默认情况下,每次运行会把之前的那个结果给清理掉. 有时候运行多个程序像对比结果,不太方便. 可以在pycharm的控制台那里点击右键,在弹出的菜 ...

  5. sublime的Package Control的安装及使用

    一.快速安装 使用Ctrl+`快捷键或者通过View->Show Console菜单打开命令行,粘贴如下代码(注意下面代码为一行): import urllib.request,os; pf = ...

  6. Confluence与Jira安装及后期迁移问题记录

    Confluence与Jira 由于线上jira和confluence之前互相关联,confluence的登录用户全部关联自jira的用户,confluence安装时会提示是否关联jira,由于这个问 ...

  7. Docker的网络模式和跨主机通信

    文章转载自:http://www.a-site.cn/article/169899.html   Docker的四种网络模式Bridge模式 当Docker进程启动时,会在主机上创建一个名为docke ...

  8. Android笔记01--手机振动

    一.android任务栈  不懂? 栈:先进后出 队列:先进先出 任务栈Task中:打开一个Activity叫进栈 关闭一个activit出栈 任务栈是用来维护Activity的.是用来维护用户的操作 ...

  9. Firebase Chat (firebase 实现web聊天室)

    基于firebase + cloud Function 实现web聊天(demo版) 知识点: 使用Firebase SDK创建Google Cloud功能. 触发云功能基于Auth,云存储和Clou ...

  10. sql之游标

    --select * from   master..sysprocessesuse testdeclare my_cursor cursor scroll dynamic --scroll表示可以向前 ...