搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
QTP自动化测试实践
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787121067273
  • 作      者:
    陈能技编著
  • 出 版 社 :
    电子工业出版社
  • 出版日期:
    2008
收藏
作者简介
  陈能技,广州赛宝腾睿信息科技有限公司测试经理、质量保障部主管。CSDN博客专家、51testing博客专家。
  毕业于广东工业大学计算机学院。
  多年从事计算机软件测试和质量改进工作,曾任程序员、测试工程师、技术支持工程师、QA、内审员等职务,具有丰富的测试团队组建、自动化测试管理经验。目前专注于软件 自动化测试及管理领域,倡导实用主义测试理念,坚信“Seeing is NOT believing,Testing is believing!”。
展开
内容介绍
  本书面向使用QuickTest Professional测试工具进行自动化功能测试的测试工程师,以及希望了解自动化功能测试的测试员。本书以循序渐进的方式讲解了自动化功能测试的基本知识,结合QuickTest Professional的使用,深入讲解自动化测试脚本的开发,涉及目前流行的数据驱动测试方法、关键字驱动测试方法等方面的内容,并且详细讲解了如何使用QuickTest Professional测试Windows控件、ActiveX控件、VB控件、Web控件等。
  对于希望了解和使用QuickTest Professional的插件技术的测试工程师,还详细讲解了QuickTest Professional的.NET插件的使用,包括利用.NET插件测试.NET Windows Form、Web Form,以及最新的WPF控件。同时还介绍了.NET插件的扩展技术,以及QuickTest Professional的自动化对象模型的使用方法。
  本书在讲解自动化测试脚本开发知识和QuickTest Professional的使用的过程中,通过详细的例子进行分析和讲解,让读者可以通过例子进行理解,并且可以自己进行尝试,非常适合独立学习和研究自动化测试技术的初级测试工程师参考使用。
展开
精彩书评
  本书结合工具、实例代码充分深入地讲解自动化测试,填补了国内自动化功能测试方面以及QTP方面书籍的空白。
  51Testing软件测试培训高级讲师  朴春龙
  本书详细地介绍了软件自动化测试工具QTP——对于自动化测试工具理论和实践的初学者,这本书是个福音!读完本书之后,你对测试工具QTP会有非常全面的了解。它揭开了QTP神秘的面纱。
  中国雅虎 资深软件测试工程师  李丽君
  本书结合实例,对QTP的基本功能进行了系统化的讲解,对学习QTP的测试人员,是一本不错的入门级教程。
  快乐米音乐网 测试总监  李永红
展开
精彩书摘
  第1篇  自动化测试基础篇
  第1章 软件测试基础
  软件测试是软件质量保证的重要手段,通过软件测试发现软件缺陷,从而修改缺陷,提高软件的质量水平。本章介绍软件测试的基本知识,包括软件缺陷与软件测试的关系,软件质量与软件测试的关系,以及软件开发与软件测试的关系。
  本章内容也是软件自动化测试的基础知识。
  1.1 软件缺陷与软件测试
  在软件测试领域,至今为止,还没有一种有效的缺陷检测机制,可以完全发现所有的缺陷。因为软件缺陷与硬件缺陷存在很多不同之处。
  1.1.1 软件缺陷与硬件缺陷的异同
  软件缺陷与硬件缺陷一样,会对产品的使用方造成困扰。但是软件缺陷在一般情况下,不会对用户造成直接的人身伤害,所以很多人没有意识到软件缺陷的危害性和严重性。然而,在一些依赖软件进行业务处理的领域,软件缺陷可能造成重大的经济损失,甚至危及人身安全,例如,2007年4月,某个软件缺陷导致某地铁系统的列车火灾,软件未能检测和防止剩余动力在设备中的使用,导致列车过热而起火。
  美国标准和技术研究机构(National Institute of Standards and Technology)在2002年公布的一项关于软件缺陷引起的经济损失的报告中的数据表明:由于软件缺陷造成的美国经济损失高达595亿美元。
  因此,软件缺陷与硬件缺陷一样,可能会对用户造成重大的损失,人们需要像对待硬件缺陷一样重视软件缺陷。很多硬件缺陷的出错模式是可以预见的,而软件缺陷的可预见性则没有那么强。软件缺陷的一个重要特点是它的隐蔽性,由于软件的复杂度高、状态空间广阔,因此,要覆盖软件所有可能的行为几乎是不可能的。
  1.1.2 如何通过软件测试发现软件缺陷
  为了解决软件缺陷带来的困扰,人们仍然在不断地寻找有效发现软件错误的方法,手工测试仍然是主要的查找错误的方式,自动化测试能部分地解决覆盖面的问题和测试效率的问题,但是不能从根本上解决问题。
  不能单单靠软件测试来保证软件不出错,软件测试仅仅是发现软件缺陷的一种手段而已。在软件测试人员的角色出现之前,是由开发人员来负责缺陷控制的,而开发人员往往停留在“调试”阶段的测试水平,在代码调试通过后,往往不会花太多专门的时问来发现缺陷。而且,开发人员一般不习惯于对自己的代码进行批判性的检查,很多时候,对自己编写的代码过于自信,因此,很多缺陷就留待用户来发现了。
  由于软件测试是比较直接的发现软件缺陷的手段,因此也就成为了软件缺陷控制的主要手段。测试人员通过研究软件产品的需求,以及用户的实际业务场景,设计出各种测试用例,通过执行测试用例,判断被测试的应用程序是否满足用户需求。
展开
目录
第1篇  自动化测试基础篇
第1章  软件测试基础
1.1  软件缺陷与软件测试
1.1.1  软件缺陷与硬件缺陷的异同
1.1.2  如何通过软件测试发现软件缺陷
1.2  软件质量与软件测试
1.2.1  软件质量管理在项目管理中的地位
1.2.2  软件开发模式与软件测试
1.2.3  软件开发模式与自动化测试
1.2.4  软件测试能保证软件质量吗
1.3  软件开发与软件测试
1.3.1  软件开发与软件测试的对立统一
1.3.2  测试人员需要的开发技术

第2章  软件自动化测试
2.1  手工测试与自动化测试
2.1.1  手工测试的缺点
2.1.2  什么时候使用自动化测试
2.1.3  自动化测试——你准备好了吗
2.2  如何开展自动化测试
2.2.1  选取合适的测试项目来开展自动化测试
2.2.2  自动化测试介入的时机
2.2.3  自动化测试工程师的基本素质和技能要求
2.2.4  自动化测试的成本
2.3  自动化测试方案
2.3.1  选择自动化测试方案
2.3.2  自动化测试脚本的编写方法
2.3.3  线性脚本的编写方法
2.3.4  结构化脚本的编写方法
2.3.5  共享脚本的编写方法
2.3.6  数据驱动脚本的编写方法
2.3.7  关键字驱动脚本的编写方法
2.3.8  合理选择自动化测试脚本开发方法
2.4  实用性自动化测试策略
2.4.1  自动化测试工具的问题
2.4.2  自动化测试的管理规范
2.4.3  自动化测试中人的因素

第3章  软件自动化测试工具
3.1  自动化测试工具类型
3.1.1  商业测试工具
3.1.2  开源测试工具
3.1.3  自主开发测试工具
3.2  自动化测试工具选型
3.2.1  测试工具评估
3.2.2  测试工具试用
3.2.3  自动化测试工具的培训
3.3  自动化测试工具的原理
3.3.1  基于代码层面的功能自动化测试工具
3.3.2  基于浏览器和DOM对象模型的功能自动化测试工具
3.3.3  基于GUI对象识别的测试工具原理
3.3.4  反射机制在自动化功能测试工具中的使用
3.3.5  UI Automation在自动化功能测试工具中的使用
3.3.6  QTP对象识别技术

第2篇  QTP使用基础篇
第4章  QuickTest Professional的安装和配置
4.1  QTP 9.2的安装
4.1.1  安装要求
4.1.2  QTP 9.2支持的环境和程序
4.1.3  QTP 9.2支持的插件
4.1.4  安装步骤
4.2  QTP 9.2的基本配置
4.2.1  QTP的帮助文档
4.2.2  QTP的视频教程
4.2.3  QTP自带的样例程序
4.2.4  启动QTP
4.2.5  插件加载设置与管理
4.2.6  创建一个空的测试项目
4.2.7  录制和测试运行设置
4.2.8  指定需要录制的应用程序
4.2.9  使用QTP编写第一个自动化测试脚本

第5章  QuickTest Professional的基本使用方法
5.1  QTP基本功能的使用
5.1.1  QTP自动化测试的基本过程
5.1.2  在关键字视图中编辑测试脚本
5.1.3  在关键字视图中为测试步骤添加注释
5.1.4  在关键字视图中添加测试信息的输出
5.1.5  插入检查点(Checkpoint)
5.1.6  在关键字视图中插入新的测试步骤
5.1.7  在专家视图中编辑测试脚本
5.1.8  脚本编辑器的使用
5.2  编辑测试脚本
5.2.1  识别对象
5.2.2  Object Spy的使用
5.2.3  对象库管理
5.2.4  把测试对象添加到对象库中
5.2.5  导出对象库文件
5.2.6  在测试脚本中访问对象库的测试对象
5.2.7  添加新的Action
5.2.8  关联Action的对象库
5.2.9  编辑新的Action
5.2.10  在函数库中创建自定义函数
5.3  运行和调试测试脚本
5.3.1  语法检查
5.3.2  使用断点
5.3.3  单步调试
5.3.4  调试查看器的使用
5.3.5  运行整个测试
5.3.6  运行部分测试
5.3.7  批量运行测试
5.4  分析测试结果
5.4.1  选择测试运行结果的存储位置
5.4.2  查看概要测试运行结果
5.4.3  查看检查点的结果
5.4.4  查看测试过程的截屏
5.5  利用Active Screen来编辑测试脚本
5.5.1  查看Active Screen
5.5.2  Active Screen的设置
5.5.3  在Active Screen中选择并添加对象到对象库
5.5.4  选择Active Screen中的对象并输出其对象属性
5.5.5  在Active Screen中插入检查点
5.5.6  在Active Screen中选择对象并添加测试步骤

第6章  QuickTest Professional与其他工具的整合
6.1  与WinRunner的整合
6.1.1  在QTP中调用WinRunner的测试脚本
6.1.2  在QTP中调用WinRunner的函数
6.2  QTP与LoadRunner的整合
6.2.1  在QTP中为LoadRunner设计测试脚本
6.2.2  使用Silent Test Runner模拟LoadRunner的调用
6.2.3  在LoadRunner中插入和运行QTP脚本
6.2.4  在LoadRunner中运行QTP脚本需要注意的几点
第3篇  QTP脚本开发篇

第7章  关键字驱动测试
7.1  关键字驱动测试方法
7.1.1  什么是关键字驱动测试方法
7.1.2  关键字测试驱动框架
7.1.3  关键字驱动实现自动化测试的阶段划分
7.1.4  什么时候使用关键字驱动测试方法
7.2  可视化编辑测试步骤
7.2.1  编辑对象库
7.2.2  选择测试对象
7.2.3  选择测试对象相应的操作
7.2.4  设置测试逻辑
7.3  检查点的使用
7.3.1  为测试添加检查点
7.3.2  检查点类型
7.3.3  添加标准检查点
7.3.4  添加图像检查点
7.3.5  添加位图检查点
7.3.6  添加表格检查点
7.3.7  添加文本检查点
7.3.8  添加文本区域检查点
7.3.9  添加可访问性检查点
7.3.10  添加页面检查点
7.3.11  添加数据库检查点
7.3.12  添加XML检查点

第8章 数据驱动测试
8.1  数据驱动测试方法
8.1.1  什么时候使用数据驱动测试方法
8.1.2  数据驱动测试的一般步骤
8.2  参数化测试
8.2.1  通过参数化测试来提高测试的灵活性
8.2.2  参数化测试步骤
8.2.3  使用随机数来进行参数化
8.2.4  参数化检查点
8.2.5  设置数据表格迭代方式
8.3  Action测试输入的参数化
8.3.1  编辑Action的属性
8.3.2  添加Action的输入参数
8.3.3  调用Action
8.4  使用环境变量的参数化
8.4.1  定义和设置环境变量
8.4.2  在测试步骤中绑定环境变量值
8.4.3  导出环境变量到XML文件
8.4.4  导入外部环境变量文件
8.5  使用数据驱动器来参数化测试
8.5.1  数据驱动器的使用方法
8.5.2  数据驱动向导

第9章  VBScript基础
9.1  脚本语言简介
9.1.1  Windows脚本语言
9.1.2  测试工具的“厂商语言”
9.2  VBScript语言基础
9.2.1  VBScript的数据类型
9.2.2  变量子类型(Variant Subtypes)
9.2.3  VBScript的变量
9.2.4  VBScript的运算符
9.2.5  VBScript的条件语句
9.2.6  VBScript的循环语句
9.2.7  VBScript的Sub与Function
9.2.8  VBScript的数组
9.3  VBScript与正则表达式
9.3.1  正则表达式简介
9.3.2  在VBScript中使用正则表达式
9.3.3  正则表达式在自动化测试中的使用

第10章  QTP测试脚本开发
10.1  熟练使用专家视图
10.1.1  专家视图与关键字视图的对应关系
10.1.2  在专家视图中编辑测试脚本的方法
10.1.3  输入代码注释
10.1.4  自动化VBScript语法识别和完成
10.2  QTP的Utility对象的使用
10.2.1  使用PathFinder对象查找文件
10.2.2  使用XMLUtil对象检查XML
10.2.3  使用Extern对象加载DLL
10.2.4  SystemUtil对象的使用
10.2.5  使用Reporter对象写入测试结果
10.2.6  Environment对象的使用
10.3  QTP内置函数的使用
10.3.1  使用Print函数显示信息
10.3.2  使用Wait函数暂停测试脚本的执行
10.3.3  使用ExecuteFile执行VBScript脚本
10.4  虚拟对象管理
10.4.1  什么是虚拟对象
10.4.2  定义虚拟对象
10.4.3  虚拟对象的使用和管理
10.5  QTP测试脚本开发技巧
10.5.1  在运行过程中设置测试选项
10.5.2  巧用Setting对象的Item属性
10.5.3  利用DotNetFactory对象访问.NET类库
10.5.4  自定义数据库检查点
10.6  Recovery Scenarios的使用
10.6.1  什么是Recovery Scenarios
10.6.2  什么时候使用Recovery Scenarios
10.6.3  定义Recovery Scenarios
10.6.4  关联Recovery Scenario到测试脚本
10.6.5  Recovery Scenario的运行
10.7  利用DotNetFactory访问.NET对象
10.7.1  DotNetFactory的使用方法
10.7.2  访问.NET类库
10.7.3  访问C#编写的DLL

第11章  QTP描述性编程
11.1  使用描述性编程的时机
11.1.1  录制方式的测试脚本开发的问题
11.1.2  什么时候使用描述性编程方法
11.2  描述性编程的使用方法
11.2.1  直接描述的方式
11.2.2  直接描述方式的语法格式
11.2.3  描述性编程的“后续强迫性”
11.2.4  使用描述性编程的技巧
11.2.5  使用“With”关键字简化代码
11.2.6  使用Description对象
11.2.7  设置Description对象的RegularExpression属性
11.2.8  在ChildObjects对象中使用Description对象
11.3  用编程的方式创建检查点
11.3.1  通过GetROProperty添加对控件的动态属性的判断
11.3.2  自定义的检查点

第12章  使用QTP测试标准Windows对象
12.1  Desktop对象的使用
12.1.1  使用CaptureBitmap方法来截屏
12.1.2  使用ChildObjects方法获取某个对象中包含的对象列表
12.1.3  使用RunAnalog方法运行低级录制过程
12.2  SystemUtil对象的使用
12.2.1  使用Run方法运行文件或程序
12.2.2  在脚本运行过程中屏蔽鼠标和键盘
12.2.3  关闭进程
12.3  Clipboard对象的使用
12.3.1  Clipboard对象介绍
12.3.2  Clipboard对象的使用方法
12.4  标准Windows控件的基本属性和方法
12.4.1  使用Exist属性来判断控件是否存在
12.4.2  使用CheckProperty检查控件属性
12.4.3  使用GetROProperty获取控件属性
12.5  各类标准Windows控件的测试
12.5.1  Dialog对象的测试
12.5.2  Static对象的测试
12.5.3  WinButton对象的测试
12.5.4  WinCalendar对象的测试
12.5.5  WinCheckBox对象的测试
12.5.6  WinComboBox对象的测试
12.5.7  Window对象的测试
12.5.8  WinEdit对象的测试
12.5.9  WinEditor对象的测试
12.5.10  WinList对象的测试
12.5.11  WinListView对象的测试
12.5.12  WinMenu对象的测试
12.5.13  WinRadioButton对象的测试
12.5.14  WinScrollBar对象的测试
12.5.15  WinSpin对象的测试
12.5.16  WinStatusBar对象的测试
12.5.17  WinTab对象的测试
12.5.18  WinToolbar对象的测试
12.5.19  WinTreeView对象的测试
12.5.20  WinObject对象的测试

第13章  使用QTP测试ActiveX对象
13.1  ActiveX对象的测试
13.1.1  Object属性的使用
13.1.2  AcxUtil对象的FireEvent方法的使用
13.2  各类ActiveX控件的测试
13.2.1  RadioButton类ActiveX控件的测试
13.2.2  CheckBox类ActiveX控件的测试
13.2.3  Calendar类ActiveX控件的测试
13.2.4  Label类ActiveX控件的测试
13.2.5  ProgressBar类ActiveX控件的测试
13.2.6  SliderBar类ActiveX控件的测试
13.2.7  LED类ActiveX控件的测试
13.2.8  ListBox类ActiveX控件的测试

第14章  使用QTP测试VB对象
14.1  Visual Basic控件的测试
14.2  对各类VB控件的测试
14.2.1  VbButton对象的测试
14.2.2  VbCheckBox对象的测试
14.2.3  VbComboBox对象的测试
14.2.4  VbEdit对象的测试
14.2.5  VbEditor对象的测试
14.2.6  VbFrame对象的测试
14.2.7  VbLabel对象的测试
14.2.8  VbList对象的测试
14.2.9  VbRadioButton对象的测试
14.2.10  VbScrollBar对象的测试
14.2.11  VbWindow对象的测试

第15章  使用QTP测试标准Web对象
15.1  Web对象的测试
15.1.1  加载Web插件
15.1.2  Web的录制和运行设置
15.1.3  QTP支持的浏览器
15.1.4  Windows Applications的录制和运行设置
15.1.5  设置IE的“Enable Tabbed Browsering”选项
15.1.6  使用Object属性访问DOM对象
15.1.7  使用Browser对象控制浏览器的导航
15.2  对各类Web对象的测试
15.2.1  Page对象的测试
15.2.2  Frame对象的测试
15.2.3  Image对象的测试
15.2.4  Link对象的测试
15.2.5  WebButton对象的测试
15.2.6  WebCheckBox对象的测试
15.2.7  WebEdit对象的测试
15.2.8  WebFile对象的测试
15.2.9  WebList对象的测试
15.2.10  WebRadioGroup对象的测试
15.2.11  WebTable对象的测试
15.2.12  WebXML对象的测试
15.2.13  WebElement对象的测试
第4篇 QTP高级技术篇

第16章  QTP的插件技术
16.1  QTP插件简介
16.1.1  查看插件安装和加载情况
16.1.2  插件分离的好处
16.2  内建插件与外部插件
16.2.1  内建插件
16.2.2  外部插件
16.2.3  插件的安装
16.3  插件加载与插件管理
16.3.1  QTP的插件加载过程分析
16.3.2  关联QTP插件与测试脚本
16.3.3  插件关联管理
16.3.4  通过编程方式启动QTP并加载插件
16.3.5  插件与检查点类型的关系

第17章  使用QTP的.NET插件测试.NET平台软件
17.1  QTP的.NET插件
17.1.1  .NET插件安装与设置
17.1.2  .NET Windows Forms Spy的使用
17.1.3  利用.NET Windows Forms Spy来分析.NET控件
17.2  测试.NET Windows Forms控件
17.2.1  QTP支持的.NET Windows Forms控件
17.2.2  通过Object属性来获取对象的内部属性
17.2.3  通过Object属性访问并执行控件方法
17.2.4  查看Object属性的两种方法
17.3  测试WPF控件
17.3.1  加载WPF插件
17.3.2  QTP支持的WPF控件
17.3.3  访问WPF控件的内部属性和方法
17.4  测试.NET Web Forms控件
17.4.1  QTP支持的.NET Web Forms控件
17.4.2  测试.NET Web Forms的程序的前提条件
17.4.3  利用Object属性来增强.NET Web Forms程序的测试

第18章  QTP的.NET插件扩展技术及其使用
18.1  QTP的.NET插件提供的扩展模块
18.1.1  .NET插件的扩展模块机制介绍
18.1.2  使用.NET Windows Forms Spy来协助开发扩展性
18.2  使用C#对QTP的.NET插件进行扩展
18.2.1  安装Custom Server模板
18.2.2  建立.NET控件的测试扩展项目
18.2.3  实现控件录制逻辑
18.2.4  注册TrackBar控件的事件处理器
18.2.5  实现控件的运行逻辑
18.2.6  对QTP进行配置
18.2.7  扩展项目的运行

第19章  QTP的自动化对象模型及其使用
19.1  QTP自动化对象模型简介
19.1.1  什么时候使用自动化对象模型库
19.1.2  选择开发语言和环境
19.1.3  对象模型库基本元素
19.2  在C#中使用QTP自动化对象模型
19.2.1  引用对象库
19.2.2  在C#中调用QTP对象模型库
19.3  常用的自动化对象模型方法介绍
19.3.1  在C#中启动QTP并加载指定插件
19.3.2  在VBScript脚本中设置QTP选项
19.3.3  导出QTP选项设置到VBScript脚本
19.3.4  在VBScript脚本中设置QTP的环境变量
19.3.5  在VBScript脚本中设置测试运行选项
19.3.6  导出QTP测试设置到VBScript脚本中

第20章  使用QTP开发一个猴子测试工具
20.1  猴子测试
20.1.1  猴子测试简介
20.1.2  笨猴子与聪明猴子
20.1.3  什么时候使用猴子测试
20.2  使用QTP设计一个笨猴子
20.2.1  用QTP实现笨猴子的基本要素
20.2.2  使用Randomize函数产生随机数
20.2.3  使用RandomNumber对象获取随机数
20.2.4  通过WMI对象获取屏幕高度和宽度
20.2.5  利用DotNetFactory获取屏幕高度和宽度
20.2.6  让猴子控制鼠标和键盘
20.2.7  调用C#代码中封装的Windows API函数
20.2.8  输入随机字符串
20.2.9  记录测试信息
20.2.10  截屏
20.2.11  记录性能信息
20.2.12  基本的猴子测试工具
20.2.13  猴子测试工具的改进点

第21章  使用QTP测试Web Services
21.1  Web Services插件介绍
21.1.1  什么是Web Services
21.1.2  Web Services插件的帮助文档
21.2  使用Web Services插件测试Web Services
21.2.1  Web Service测试向导的使用
21.2.2  运行Web Service测试
21.2.3  修改Web Service测试脚本中的检查点
21.2.4  参数化Web服务的输入
21.2.5  在对象库中添加Web Service测试对象
21.2.6  检查WSDL是否满足WS-I标准
21.2.7  使用ValidateWSDL方法检查WSDL

第22章  如何编写高质量的QTP测试脚本
22.1  QTP测试脚本编码规范
22.1.1  常量命名规范
22.1.2  变量命名规范
22.1.3  对象命名规范
22.1.4  代码注释规范
22.1.5  代码风格
22.2  通过管理对象库来提高代码的可读性
22.2.1  直接录制的测试脚本的问题
22.2.2  通过修改命名来达到更加易读的效果
22.2.3  缩减代码行长度的方法
22.2.4  以中文命名测试对象
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

请选择您读者所在的图书馆

选择图书馆
浙江图书馆
点击获取验证码
登录
没有读者证?在线办证