搜索
高级检索
高级搜索
书       名 :
著       者 :
出  版  社 :
I  S  B  N:
文献来源:
出版时间 :
软件自动化测试成功之道:典型工具、脚本开发、测试框架和项目实战
0.00    
图书来源: 浙江图书馆(由图书馆配书)
  • 配送范围:
    全国(除港澳台地区)
  • ISBN:
    9787115216038
  • 作      者:
    陈能技编著
  • 出 版 社 :
    人民邮电出版社
  • 出版日期:
    2010
收藏
编辑推荐
  覆盖自动化测试前期准备、测试框架搭建、自动化测试过程管理等项目测试全过程。
  重点介绍自动化测试的脚本编写技巧,标准GuI、第三方控件和自定义控件测试等各种自动化测试的实战技术,以及主流测试工具QTP、TestC0mpIefe的实战知识。
  贴近实战的案例,如自动化测试框架搭建、自动化冒烟测试、每日构建最佳实践,对象驱动、关键字驱动测试等。
  配书光盘中赠送200多分钟的教学视频和全部源程序。
  帮助读者快速掌握自动化测试方法、技术和技巧。
展开
作者简介
  陈能技,IT168测试号拦作家、CSDN蹲客专家,某大型台资食业自动化测试顾问,8年软件测试和质量改进工作经验,曾任QA、测试经理、高级培训讲师等职务,具有丰富的测,试团队组建、自动化测试管理经验。目前专注于软件自动化测试及管理领域,已出版菩作:《软件测试技术大全》、《OTP动化测试实践》、《.NET测试实战技术大全》。
展开
内容介绍
  自动化功能测试是目前测试领域的发展方向,自动化功能测试能有效地降低测试成本、提高测试效率和测试覆盖面。《软件自动化测试成功之道:典型工具·脚本开发·测试框架和项目实战》结合项目实践全过程,对自动化测试前期准备阶段、测试框架搭建方法、自动化测试的过程管理进行了详细讲解,并介绍了各种自动化测试技巧,包括GUI控件的测试技巧、自动化脚本编写技巧等,以便让读者更好地学以致用。
  《软件自动化测试成功之道:典型工具·脚本开发·测试框架和项目实战》分成两篇,第一篇是项目实践篇,主要介绍如何借助测试工具有效地开展功能自动化测试项目,包括自动化测试的计划、设计、脚本开发和维护的全过程管理。第二篇是实用技巧篇,主要介绍如何基于流行的自动化测试工具QTP设计测试框架,除介绍几个常用的框架外,还将重点介绍笔者设计的自动化测试框架QTestWare。
  《软件自动化测试成功之道:典型工具·脚本开发·测试框架和项目实战》适合自动化测试工程师、自动化测试项目管理者、项目经理、希望从事自动化测试工作的测试人员,以及希望了解自动化测试框架搭建技术的测试人员阅读。
展开
精彩书摘
  1.1 选择合适的项目实施自动化测试
  很多企业在实施自动化测试时,往往会进入一个误区,认为进度紧、测试资源不够的情况下,可以通过自动化测试来减轻测试人员手工测试的负担,从而更快地完成测试任务。
  而事实上,自动化测试无论是对人还是对进度而言,都与普通的开发项目一样,需要投入足够的资源和时间进行自动化测试的计划、设计和脚本开发。
  因此,挑选一个进度不紧测试人员相对充裕的测试项目来开展自动化测试,尤其是对于初次尝试自动化测试项目的组织而言成功率会高很多。
  自动化测试只有在多次运行后,才能体现出自动化的优势,只有不断地运行自动化测试,才能有效预防缺陷、减轻测试人员手工回归测试的工作量。如果一个项目是短期的,并且是一次性的,则不适合开展自动化测试,因为这种项目得不到自动化测试的应有效果和价值体现。
  1.2 选择合适的测试用例实现自动化
  对于自动化测试团队而言,容易犯的一个典型的错误是:没有选择恰当的测试用例来实现自动化测试。
  大部分自动化测试项目失败的原因主要归咎于被测试应用程序的快速变化、不恰当的测试用例、不可靠的框架以及脚本编程的问题。分析这些问题的根源,我们可以看到,自动化测试必须分阶段逐步开展,一而不能局限在某个阶段完成自动化测试。因此,建议自动化测试从选择那些重要的、合适的测试用例开始,然后慢慢地扩展到其他方面。这样会带来较低的维护成本,能实现更重要的业务价值。
  那么,如何选择合适的测试用例呢?
  通常需要结合测试用例复杂度的评估来考虑选择的测试用例以及个数。首先把测试用例按一定的原则分为简单、中等、复杂3大类。然后从这3大类的测试用例中按一定的比例来选取需要实现自动化测试的用例。
  测试用例的复杂度分组可以通过综合分析测试用例包含的测试步骤(操作步骤),以及测试用例所包含的检查点个数来判定。例如,可参考表1.1来分类。
展开
目录
第一篇 项目实践篇
第1章 自动化测试的前期准备工作 1
1.1 选择合适的项目实施自动化测试 2
1.2 选择合适的测试用例实现自动化 2
1.3 对控件的熟悉程度与自动化测试成功实施之间的关系 5
1.4 自动化测试计划 5
1.5 自动化测试脚本开发规范 9
1.6 自动化测试计划文档 18

第2章 自动化测试工具 21
2.1 自动化测试工具的基本原理 22
2.2 基于GUI对象识别的测试工具原理 22
2.3 “测试对象”与“运行时对象” 24
2.4 DOM与IE Developer ToolBar 25
2.5 基于浏览器和DOM对象模型的功能自动化测试工具 28

第3章 标准控件的特殊问题的处理方法 32
3.1 识别控件的技巧 33
3.2 带CheckBox的TreeView控件的处理方法 33
3.3 DataGridView控件的处理方法 36
3.4 CheckedListBox控件的处理方法 37
3.5 ToolStrip控件的问题 39

第4章 第三方控件的测试方法 42
4.1 第三方控件的选择 43
4.2 第三方控件的自动化测试与配置管理的关系 44
4.3 C1Schedule控件的测试方法 45
4.4 如何在C1TrueDBGrid控件中定位行 46
4.5 C1TrueDBGrid控件——分组显示 47
4.6 C1TrueDBGrid控件——输入数据 48
4.7 C1FlexGrid控件的测试方法 52
4.8 XtraNavBar控件的测试方法 54

第5章 自定义控件的测试方法 58
5.1 NavigateBar控件的测试方法 59
5.2 FlexGridTree控件的测试方法 60
5.3 ImageListBox控件的测试方法 66
5.4 TSSTrueDBGrid控件的测试方法 67

第6章 自动化代码框架的搭建 71
6.1 模块化框架 72
6.2 函数库结构框架 74
6.3 关键字驱动框架 77
6.4 数据驱动框架 78
6.5 混合型框架 81
6.6 编写框架范例 81
6.7 是否使用多个项目 82

第7章 典型公共用例 83
7.1 登录模块 84
7.2 菜单选择 85
7.3 读入测试数据 86
7.4 根据功能模块打开菜单 89
7.5 启动被测试应用程序 90
7.6 退出被测试应用程序 91
7.7 配置测试数据库的连接串(选择测试数据库) 91
7.8 “白+黑”——检查数据库的数据 97

第8章 自动化冒烟测试 105
8.1 最简单级别的冒烟测试 106
8.2 二级冒烟测试 107
8.3 Flight程序的二级冒烟测试 109

第9章 与每日构建结合 117
9.1 测试工具的命令行运行方式 118
9.2 通过COM访问和控制测试工具 121
9.3 与Automated Build Studio结合 124
9.4 与FinalBuilder的结合 128
9.5 导出测试脚本的运行日志 130
9.6 发送测试日志 132

第10章 对象驱动测试(ODT)方法 138
10.1 ODT编辑 139
10.2 关联测试脚本中的函数 139
10.3 类的方法 141
10.4 测试数据与类的关联 143
10.5 测试数据与类的方法关联 144
10.6 ODT小结 148

第11章 关键字驱动测试框架 149
11.1 什么是关键字驱动 150
11.2 在TestComplete中实现关键字驱动测试 150
11.3 第二种方法的尝试 153

第12章 非预期窗口的处理 160
12.1 非预期窗口的默认处理方法 161
12.2 非预期窗口的自定义处理方法 162

第13章 自动错误预防(AEP)机制的建立 167
13.1 AEP的概念 168
13.2 与手工测试、缺陷列表结合 168
13.3 与缺陷跟踪管理系统的整合 172

第14章 自动化测试模式 173
14.1 ToolBar按钮状态设置的检查 174
14.2 查找功能的测试 181
14.3 提示信息的检查 188
14.4 消息框的处理 199
14.5 关联数据的删除检查 201
14.6 文件上传下载过程的测试 206

第15章 手工测试用例的自动化实现 212
15.1 与测试用例库结合 213
15.2 手工测试用例自动化实现的技巧 213

第16章 UI自动化测试 219
16.1 自动化的用户体验测试 220
16.2 检查默认焦点位置 220
16.3 检查Tab顺序 223
16.4 对检查Tab顺序的脚本进行完善 224
16.5 第二种检查Tab顺序的方法 228
16.6 检查字体设置 231
16.7 检查界面元素的尺寸 234
16.8 窗口标题根据菜单名称改变的问题 236
16.9 界面性能检查 238

第17章 自动化测试项目实践技巧 245
17.1 数据库连接配置问题 246
17.2 录制脚本的修改 250
17.3 自动化测试脚本编写模式 250
17.4 测试脚本编写原则 253
17.5 CLR Bridge的问题 254
17.6 Keys还是wText 255
17.7 中文命名的控件问题 256
17.8 回放脚本失败,慎防AUT多进程问题 259
17.9 全局变量的问题 261
17.10 自动化测试脚本开发与数据库选择的问题 265
17.11 LOG的问题 266
17.12 常用脚本函数的封装——字符串操作 272
17.13 文件操作 277

第18章 自动化测试的管理 282
18.1 测试脚本的源代码控制规范 283
18.2 自动化测试项目中的交流 285
18.3 自动化测试工具的版本升级问题 288
18.4 自动化测试脚本的维护 289
18.5 自动化测试团队管理 290

第二篇 实用技巧篇
第19章 基于QTP的扩展自动化测试框架 291
19.1 SAFFRON框架 292
19.1.1 如何使用SAFFRON 292
19.1.2 SAFFRON框架代码剖析 294
19.1.3 导航到指定URL 294
19.1.4 返回测试对象的描述 295
19.1.5 启动浏览器 295
19.1.6 给指定字符串前后加双引号 296
19.1.7 单击链接 297
19.1.8 一个小例子 299
19.1.9 检查对象是否存在 300
19.1.10 在文本框输入字符串 303
19.1.11 读取文本框的字符串 304
19.1.12 选择列表中的一项 306
19.1.13 关闭浏览器 307
19.1.14 对SAFFRON框架进行扩展 308
19.2 FrameworkManager框架 310
19.2.1 FrameworkManager简介 310
19.2.2 FrameworkManager的特点 311
19.2.3 下载FrameworkManager 312
19.2.4 FrameworkManager框架的组成 312
19.2.5 对象树Excel文件 312
19.2.6 clsTreeLevel类 314
19.2.7 输入子类和随机值子类 314
19.2.8 FrameworkManager的使用方法 315
19.3 QTP中的Process Guidance 315
19.3.1 什么是过程指南 316
19.3.2 过程指南的作用 318
19.3.3 自定义过程指南 320
19.3.4 过程指南深入探秘 323
19.4 业务流程测试框架 328
19.4.1 BPT框架简介 328
19.4.2 基于角色和工作流的BPT模型 328
19.4.3 QTP与QC的紧密整合 329
19.4.4 版本控制和基线 330

第20章 QTestWare框架的设计 332
20.1 QTestWare框架介绍 333
20.1.1 QTestWare支持的环境 333
20.1.2 QTestWare解决控件录制问题 334
20.1.3 QTestWare解决控件识别问题 334
20.1.4 QTestWare让脚本更简短 334
20.1.5 QTestWare封装了高可重用性的脚本 335
20.1.6 QTestWare采用的技术和原理 335
20.1.7 QTestWare专注解决的框架问题 337
20.2 用QTestWare解决.NET控件问题 338
20.2.1 CheckedListBox控件 338
20.2.2 ComponentOne之FlexGrid控件 339
20.2.3 ComponentOne之TrueDBGrid控件 341
20.2.4 ComponentOne之ToolBar控件 342
20.2.5 ComponentOne之MainMenu控件 348
20.2.6 ContextMenuStrip控件 357
20.2.7 DataGridView控件 358
20.2.8 DomainUpDown控件 361
20.2.9 ListView控件 362
20.2.10 MaskedTextBox控件 363
20.2.11 MenuStrip控件 364
20.2.12 PropertyGrid控件 365
20.2.13 StatusStrip控件 368
20.2.14 ToolStrip控件 368
20.2.15 TrackBar控件 370
20.2.16 TreeView控件 374
20.3 用QTestWare解决Web控件问题 376
20.3.1 Browser对象 376
20.3.2 Page对象 379
20.3.3 WebTable对象 381
20.3.4 WebList对象 382
20.3.5 YUI之Calendar控件 384
20.3.6 YUI之DataTable控件 388
20.3.7 YUI之Slider控件 390
20.3.8 YUI之TreeView控件 394
20.4 QTestWare框架通用函数 397
20.4.1 CaptureBitmapAndSaveToLog用于截屏并保存到日志 397
20.4.2 DeviceReplay用于控制鼠标和键盘 399
20.4.3 GetToolTip用于获取ToolTip上的文本 405
20.4.4 MousePosition用于获取鼠标光标坐标 406
20.4.5 EnterNode和ExitNode用于创建层次化的测试报告 407
展开
加入书架成功!
收藏图书成功!
我知道了(3)
发表书评
读者登录

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

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