QTP自动化测试权威指南

发表于:2015-02-28来源:uml.org.cn作者:不详点击数: 标签:自动化测
自动化测试是对一个已有的手工测试过程减少并尽可能排除人工干预的过程。

  第一章 简介

  什么是自动化测试

  自动化测试是对一个已有的手工测试过程减少并尽可能排除人工干预的过程。

  1、什么时候适合做自动化测试

  下面是一组适合将手工测试自动化的考量因素:

  测试需要经常重复。

  测试流程和验证点相对长时间比较稳定。

  测试目的是验证一个业务流程,而不是外观,感觉,颜色,图表布局等。

  测试需要大量重复或者同时包含很多步骤,并且这些操作每次都需要完全一致,这就要求手工测试者不能疲劳大意。

  测试生成的结果被监管机构要求电子化记录和存档并符合正式的证据要求。

  测试通过或失败的结果相当容易判断且被所选自动化工具捕获。

  测试需要使用大量的数据到被测应用程序中。

  2、什么时候需要避免自动化

  随机性测试,领域专家在各种业务流程组合中的随机尝试。

  一次性测试或者只重复数次。

  测试需要覆盖多个功能模块且这些功能模块在整个产品功能中的测试覆盖几乎非常小。

  测试验证外观,感觉,颜色,图表的布局等。

  测试结果是否通过需要从多个不同并且不相关的系统或(和)应用中判断

  自动化测试流程

  理解自动化测试中包含的各个阶段对于开发和有效利用测试框架以及用例非常重要:

  1、选择“最适合的”自动化工具:在对任何应用开始自动化测试之前,重要的是针对主要应用部分选择最适合的工具。选择需要基于各种因素,比如价格,易用性,应用支持能力和产品服务支持。

  2、概念证明(POC):此阶段包含创建一些脚本示例用来在一两个最重要的被测应用中验证业务流程。它可以帮助识别未来在测试用例的脚本开发中有可能碰到的主要问题。概念证明也可用来为你的应用选择最适合的自动化测试工具

  3、需求分析:包含分析某个应用的需求,研究已有的手工测试用例和定义当前自动化测试项目的范围。

  4、项目估算:一旦自动化范围定义好,项目估算就可以根据各种因素,如需要自动化的测试用例数量,复杂程度,需开发的可复用模块,人员需求等制定下来。

  5、框架设计:包含创建共享对象库,重用模块,编写最佳实践参考文档,以及实现任何可以对开发自动化测试脚本有用的基础支持组件。

  6、测试脚本开发:通过调用可重用模块和在工作流具体脚本中增加相关验证点来创建测试用例。

  7、调试:完成的测试脚本应该是经过调试的,以保证运行时符合预先设计。要确保在调试时使代码经过所有错误处理路径。

  8、执行:在这个阶段测试脚本最终在回归测试中执行来验证被测应用。

  9、结果分析:此阶段流程依据执行时生成的各个测试结果。

  10、维护:这个阶段包括更新脚本来解决执行中发现的代码问题,其中可能包含UI或结构变动,或者是流程,功能以及新版本中不可避免的变更。一个设计良好的框架和测试集可以保证维护成本达到最小。

  第三章、对象库

  QTP在对象库(OR)里为每一个被测对象存储了一个对象定义。该定义包含了一些用来唯一识别运行时对象的参数值。QTP Object Repository Manager 是用来查看和修改对象库中的对象及其属性的。

  图 3-1. Object Repository Manager

  图3-1,展示了一个简单的对象库。这个对象库有一个WinToolbar对象,包含了一个可以用来识别的逻辑名"Running Applications"和两个属性:"Text" 和"nativeclass" .我们可以点击"Add/Remove"按钮来添加或者删除属性。图3-2显示了从Object Identification打开的Add/Remove Properties对话框,它可以用来添加或删除任意的属性。

  提示:在对象库的树视图中选择一个对象后,点击'Highlight'按钮,应用程序(必须是打开的)中的对象将会高亮显示。同样,在代码中也可以实现高亮:Window("Window").WinToolbar("Running Applications").Highlight.

原文转自:http://www.uml.org.cn/Test/201307084.asp