QTP自动化测试权威指南 连载(一)
第一章 简介
什么是自动化测试
自动化测试是对一个已有的手工测试过程减少并尽可能排除人工干预的过程。
什么时候适合做自动化测试
下面是一组适合将手工测试自动化的考量因素:
● 测试需要经常重复。
● 测试流程和验证点相对长时间比较稳定。
● 测试目的是验证一个业务流程,而不是外观,感觉,颜色,图表布局等。
● 测试需要大量重复或者同时包含很多步骤,并且这些操作每次都需要完全一致,这就要求手工测试者不能疲劳大意。
● 测试生成的结果被监管机构要求电子化记录和存档并符合正式的证据要求。
● 测试通过或失败的结果相当容易判断且被所选自动化工具捕获。
● 测试需要使用大量的数据到被测应用程序中。
什么时候需要避免自动化
● 随机性测试,领域专家在各种业务流程组合中的随机尝试。
● 一次性测试或者只重复数次。
● 测试需要覆盖多个功能模块且这些功能模块在整个产品功能中的测试覆盖几乎非常小。
● 测试验证外观,感觉,颜色,图表的布局等。
● 测试结果是否通过需要从多个不同并且不相关的系统或(和)应用中判断
自动化测试流程
理解自动化测试中包含的各个阶段对于开发和有效利用测试框架以及用例非常重要:
● 选择“最适合的”自动化工具:在对任何应用开始自动化测试之前,重要的是针对主要应用部分选择最适合的工具。选择需要基于各种因素,比如价格,易用性,应用支持能力和产品服务支持。
● 概念证明(POC):此阶段包含创建一些脚本示例用来在一两个最重要的被测应用中验证业务流程。它可以帮助识别未来在测试用例的脚本开发中有可能碰到的主要问题。概念证明也可用来为你的应用选择最适合的自动化测试工具。
● 需求分析:包含分析某个应用的需求,研究已有的手工测试用例和定义当前自动化测试项目的范围。
● 项目估算:一旦自动化范围定义好,项目估算就可以根据各种因素,如需要自动化的测试用例数量,复杂程度,需开发的可复用模块,人员需求等制定下来。
● 框架设计:包含创建共享对象库,重用模块,编写最佳实践参考文档,以及实现任何可以对开发自动化测试脚本有用的基础支持组件。
● 测试脚本开发:通过调用可重用模块和在工作流具体脚本中增加相关验证点来创建测试用例。
● 调试:完成的测试脚本应该是经过调试的,以保证运行时符合预先设计。要确保在调试时使代码经过所有错误处理路径。
● 执行:在这个阶段测试脚本最终在回归测试中执行来验证被测应用。
● 结果分析:此阶段流程依据执行时生成的各个测试结果。
● 维护:这个阶段包括更新脚本来解决执行中发现的代码问题,其中可能包含UI或结构变动,或者是流程,功能以及新版本中不可避免的变更。一个设计良好的框架和测试集可以保证维护成本达到最小。
本文转载自51testing软件测试网,查看更多:http://www.51testing.com
QTP自动化测试权威指南 连载(一)的更多相关文章
- 《javascript权威指南》读书笔记(连载)
这是一篇很长的博客 终于把权威指南给买回来了,之前一直犹豫,第一:书太厚,怕买了不能坚持看完.第二:觉得太贵,最少100¥.现在实习也能发点工资了,给自己定了一个志愿:把一个月的工资用于买书.这么一想 ...
- JavaScript权威指南 - 函数
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...
- JavaScript权威指南 - 对象
JavaScript对象可以看作是属性的无序集合,每个属性就是一个键值对,可增可删. JavaScript中的所有事物都是对象:字符串.数字.数组.日期,等等. JavaScript对象除了可以保持自 ...
- JavaScript权威指南 - 数组
JavaScript数组是一种特殊类型的对象. JavaScript数组元素可以为任意类型,最大容纳232-1个元素. JavaScript数组是动态的,有新元素添加时,自动更新length属性. J ...
- 《Ansible权威指南》笔记(3)——Ad-Hoc命令集,常用模块
五.Ad-Hoc命令集1.Ad-Hoc命令集通过/usr/bin/ansible命令实现:ansible <host-pattern> [options] -v,--verbose ...
- 《Ansible权威指南》笔记(1)——安装,ssh密钥登陆,命令
2016-12-23 读这本<Ansible权威指南>学习ansible,根据本书内容和网上的各种文档,以及经过自己测试,写出以下笔记.另,这本书内容很好,但印刷错误比较多,作者说第二版会 ...
- 读《Android编程权威指南》
因为去年双十二购买了一折的<Android 编程权威指南(第一版)>,在第二版出来后图灵社区给我推送了第二版的优惠码,激动之余就立马下单购买电子书,不得不说Big Nerd Ranch G ...
- maven权威指南学习笔记(五)—— POM
1. 简介 Archetype插件通过 pom.xml 文件创建了一个项目.这就是项目对象模型 (POM),一个项目的声明性描述. 当Maven运行一个目标的时候,每个目标都会访问定 义在项目POM里 ...
- maven权威指南学习笔记(一)——简介
maven是什么?有什么用? Maven是一个项目管理工具,它包含了 一个项目对象模型 (Project Object Model), 一组标准集合, 一个项目生命周期(Pro ...
随机推荐
- 在picture library中取某一图片的大图、小图
public static string GetPicThumbnail(SPFile file, string type) { string thumbnail = "" ...
- [日历] C#修改CNDate日历帮助类 (转载)
点击下载 CNDate.rar 主要功能如下 .传回公历y年m月的总天数 .根据日期值获得周一的日期 .获取农历 #region 私有方法 private static long[] lunarInf ...
- java.lang.IllegalStateException: Can not perform this action after onSaveInstanceState
在使用Fragment的过程中,常常会遇到在Activity的onSaveInstanceState方法调用之后,操作commit或者popBackStack而导致的crash. 因为在onSaveI ...
- MSSQL生成整个数据库的SQL脚本的工具 scptxfr.exe
scptxfr.exe的路径要正确declare @cMd varchar(1000)set @cmd = 'master.dbo.xp_cmdshell ' + '''c:\"Micros ...
- HTML基础(2) 格式标签 文本标签
格式标签: 1.<p></p> 用来显示段落 2.<br> 控制换行 3.<nobr> </nobr> 防止浏览器将过长内容自动换行显示 ...
- 菜鸟日记之JSP二 内置对象的理解
·最近学习JSP了,对编程和网络又有了一些理解.无论是现实中人与人的交流,还是网络世界的接触,都是在相互表达自己的意思让别人知道,并理解对方的信息.然后我们知道的事情不断的变多,会又交杂出新的内容,不 ...
- node 后台ajax文件(同时支持http、https)
var http = require("http"), Url = require("url"), querystring = require('queryst ...
- 简单安装python的pip工具模块
下载最新pip安装包 https://pypi.python.org/pypi/pip#downloads 安装 .tar.gz cd pip-.tar.gz python setup.py inst ...
- Collection View 自定义布局(custom flow layout)
Collection view自定义布局 一般我们自定义布局都会新建一个类,继承自UICollectionViewFlowLayout,然后重写几个方法: prepareLayout():当准备开始布 ...
- SQL Server日期函数之获得一个月中的天数
SQL Server日期函数之获得一个月中的天数在实际中的应用比例还是占为多数的,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱,望会在以后的学习或是工作中带来很大的帮助. 获得一个月 ...