移动APP以及WEB产品 自动化测试培训 顺其自然 QQ:332393543
简介 本课程通过QTP产品引入软件自动化测试的基本概念,帮助大家了解自动化测试的基本流程和配套的工具体系。通过实际案例讲解移动互联网产品的测试过程,并帮助大家建立自动化测试的基础。
议程 自动化测试概念和流程 QTP和QT简介 自动化测试工具使用介绍 WEB和移动应用自动化测试案例 交流和讨论
概述 自动化测试的成本考虑 ——构建成本 移动互联网时代,如何实 ——使用成本 现对APP的自动化测试? 抛出本次培训要解决的两个问题,如何测试和成本的考虑。 在移动互联网时代的特点: 1,快速迭代,产品更替速度很快,高效的要求 2,移动终端的使用,系统化测试要求增加,HYBRID的测试模式,WEB+终端模式 3,终端碎片化 移动APP测试的现状: 1,重视兼容性测试; 2,自动化测试手段相对落后(相对于传统的应用测试工具) 3,功能测试主要靠手工完成,自动化手段投入不够 构建成本主要考虑一个企业投入的问题,是否值得花费人力,物力投入到自动化测试中来 在使用成本上,需要描述清楚几个问题: 1,平台的成本,购买自动化测试工具的成本 2,人的成本,掌握自动化手段的成本 最终归结到一点,自动化测试手段是否能够带来价值的问题,这也是我们要解决的问题
自动化测试的目的 系统级功能测试 压力,性能,兼容性 提升产品的可靠性和可用性 测试 测试缺陷管理和追踪 本页描述测试中涉及的几个环节 测试管理——功能测试——压力性能测试 最终的目标描述 与前面对应,移动互联网时代,在功能测试自动化手段的缺失,不利于移动应用往应用逻辑复杂,高可靠性需求层面发展,强调本次培训主体在于功能测试的自动化实现
把以人为驱动的测试行为转化为机器执行的一种过程 自动化测试概念 把以人为驱动的测试行为转化为机器执行的一种过程 理解和验证 回归测试 连贯性 全覆盖 1 2 3 4 重复单一的数据录入或是击键等测试操作造成了不必要的时间浪费和人力浪费 测试人员对程序的理解和对设计文档的验证通常也可借助于测试自动化工具 采用自动化测试工具有利于测试报告文档的生成和版本的连贯性 自动化工具能够确定测试用例的覆盖路径,确定测试用例集对程序逻辑流程和控制流程的覆盖 顶部是自动化测试的定义 下面四点是自动测试的适用场景
自动化测试的流程 了解产品功能,按照功能模块分解,编写测试计划和测试用例 利用自动化测试工具,按照设定的测试用例编写测试脚本 执行自动化测试,验证产品功能,自动检查输入输出是否满足设计要求 简单介绍自动化测试的几个步骤,需要在第二个和三个步骤强调“自动化”的特点,包括自动化应该覆盖的几个范围: 1,自动化数据输入 2,通过脚本的方式替代可重复性的手工工作 3,多重的检查机制,属性检查点,数据库检查,文本输出检查 4,报告体系 研发修改BUG后,进行回归测试验证并关闭 导入测试管理工具,进行缺陷跟踪管理
QTP介绍 Mercury公司产品(后被HP收购),QuickTest Professional 自动化测试业界翘楚,并行的产品有QTP,LoadRunner和QC(Quality Center) 关键字驱动,Object Spy,VBS脚本等技术创新使用 数据驱动,对象识别技术的首先使用 主要应用于WEB以及Windows应用测试 注意该页有动画,先显示文字,最后飞入市场占有率图。 对QTP的辉煌历史做简单介绍 关键点在于QTP的价值,其历史的业界地位以及其市场占有率47% 对其后续支持乏力也做简单描述,通过对移动应用支持能力的缺点,引入QT产品
QT(Quick Testing)介绍 免费开源产品 操作与QTP类似,具备QTP的核心功能 支持Android测试环境,支持移动APP与WEB的混合测试模式 支持六种测试脚本语言 ASG机制,自动脚本生成机制,让测试人员专注于测试用例的实现 产品后续支持保障,目前版本V8.2 对QT的介绍,要注意: 1,虽然是开源,免费产品,但是其可用性不亚于商业产品,同时降低了搭建自动化测试环境的成本 2,易用性,ASG(自动脚本生成)机制,帮助测试人员生成代码 3,HYBRID测试特性 4,QTP的核心功能支持,前面提到的检查点,关键字与数据驱动,对象识别,对象脚本,描述性编程等等 5,提到QT的社区
QTP与QT对比 比较项目 QTP QT 关键字驱动模式 支持 脚本录制与回放 不支持 数据驱动 对象捕获 对象识别 支持WEB应用 支持Window应用 部分支持 支持Android应用 脚本支持 支持2种 支持六种脚本语言 对象智能识别 价格 $20000/许可证 免费 后续支持 暂停 有 对于QT弱于QTP的环节,给出合理的解释和原因,例如对象智能识别技术等等 对于QT强于
QTP/QT自动化测试基本流程
QTP/QT测试方案管理 在本页中,按照测试人员熟悉的概念对应介绍QT中相应的概念,帮助测试人员建立一一对应的概念。 测试场景是测试方案的进一步细分。通常按照功能模块对每一个软件产品进行测试场景的定义,按照功能点来定义测试行为,按照操作步骤来定义测试的执行脚本。 软件产品中,功能模块,功能点,操作步骤与QT中测试概念中的测试场景,测试行为,脚本有着对应关系,通过测试场景实现对软件产品的一个功能模块进行仿真与功能测试,测试场景分解可以为多个测试行为,通过脚本定义来实现具体的测试行为,满足测试场景的要求。 在QT的测试方案定义流程中,确定好测试方案以后,需要开始逐个定义软件产品的测试场景。QT产品中,测试场景的定义是为了满足一个具体的软件产品功能模块,而产品的功能模块是一系列功能点的集合,对应的QT中每个测试场景分解为了多个测试行为,每个功能点由多个操作步骤组成,而在QT中,每个测试行为对应一个执行脚本,通过操作步骤的执行,达到软件某个具体功能点的测试效果。操作步骤的定义,是为了完成某个功能点而分解成为具体的操作,对应到QT中,即是脚本的内容。
对象捕获 什么是对象 对象的属性和方法 对象库操作 对象识别技术 测试期间与运行期间对象识别 对象操作回放 本页中介绍对象的一些基本概念和知识,帮助测试人员了解自动化测试过程中对象的获得方法和识别方法。 为后续介绍对象脚本操作建立基础
脚本编写 脚本的作用 QT的ASG机制 脚本的编辑 脚本的运行和报告 脚本的控制机制
案例 请参考实际操作
总结 本次课程介绍了自动化测试的基本流程 QTP/QT的基本操作和功能 了解了QTP/QT对象捕获和识别机制 了解了基于VBS的脚本实现和运行方法 通过案例理解自动化测试的作用
QT产品社区支持 QT产品最新版本下载地址以及社区: http://WWW.QUICKTESTING.NET 可以到社区交流该产品的使用以及意见反馈 介绍一下QT社区以及网站
下次课程介绍 深入学习对象属性及其设置,在复杂环境下的对象识别方法 脚本编写的基本技巧 检查点的使用,包括标准检查点,文本检查点,数据库检查点的使用