51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 7350|回复: 16

[原创] 《测试框架》一书目录

[复制链接]

该用户从未签到

发表于 2009-11-13 22:21:49 | 显示全部楼层 |阅读模式
软件自动化测试框架设计与实践
Software test framework design and practice

第一篇 初级篇——认识自动化测试框架
     第1章 将降大任——自动化测试 
       1.1 软件测试面临的困境与迷
        1.1.1 软件质量困境 
        1.1.2 软件成本困境
       1.2 “时势造英雄”——软件测试自动化的异军突起 
        1.2.1 软件自动化测试如何代替手工测试 
        1.2.2 推动软件自动化测试的源动力 


      第2章“神话”破灭——自动化测试能否担当大任 
       2.1 企业自动化测试实施的情景 
        2.1.1 自动化测试实施背景介绍 
        2.1.2 自动化测试实施场景回放 
       2.2 自动化测试的“神话”破灭 
        2.2.1 昂贵的自动化测试实施成本
        2.2.2 实际上并不强大的自动化测试脚本 
        2.2.3 自动化测试实施的命门:维护成本 

      第3章 成功之道——如何构建高质量的自动化测试 
       3.1 PERAL模型的实施背景 
       3.2 Purpose:如何建立一个务实明确的自动化测试目标 
        3.2.1 问题1:自动化还是手工测试 
        3.2.2 问题2:如何估算分析自动化测试效益 
        3.2.3 问题3:如何构建高收益成本比自动化测试目标 
       3.3 Evaluation:评估和估算的量化决策指南 
        3.3.1 工具选择定律一:测试界面决定工具类族 
        3.3.2 工具选择定律二:测试项目综合特征确定工具应用方案
        3.3.3 工具选择实际案例分析 
        3.3.4 总结 
       3.4 Architecture:构建和设计自动化测试 
        3.4.1 自动化测试的最终用户是测试工程师 
        3.4.2 自动化测试的实质是开发一个测试软件
       3.5 RuncandcDebug:开发调试 
        3.5.1 高内聚和低耦合的模块实现原则 
        3.5.2 数据驱动原则 
        3.5.3 自动化脚本开发质量优先级 
       3.6 LinkcwithcManualctest:自动化测试与手工测试的有效整合 
        3.6.1 自动化测试和手工测试的关系 
        3.6.2 自动化测试与手工测试流程整合
       3.7 PEARL模型实施成功经验 
        3.7.1 重置目标,39长远规划 
        3.7.2 强大的自动化测试框架 
       3.8 总结 

      第4章 组织实施——怎样建立与培养自动化测试团队 
       4.1 测试团队简介 
       4.2 明确自动化测试目标
        4.2.1 好的目标是自动化测试实施的发动机
        4.2.2 建立一个高收益并可行的自动化测试实施目标
       4.3 积极有效的沟通技巧
        4.3.1 勤汇报,多交流 
        4.3.2 实用为先 
       4.4 培养和建立自动化测试团队
        4.4.1 手工测试团队的规划 
        4.4.2 自动化测试实施中的团队
        4.4.3 自动化测试实施后的团队
       4.5 自动化测试技术储备 


第二篇 中级篇——自动化测试框架基本原理及实现

      第5章 庐山真面目——自动化测试框架
       5.1 自动化测试框架简介
       5.2 测试的自动化——以工具为中心
       5.3 百家争鸣——形形色色的自动化测试框架
        5.3.1 数据驱动测试框架(ThecData-DrivencTestingcFramework) 
        5.3.2 关键字驱动或表驱动测试框架(ThecKeyword-DrivencorcTable-DrivencTestingcFramework)
       5.3.3 总结 
       5.4 自动化的测试——测试框架原型 
        5.4.1 框架包括的具体技术 
        5.4.2 框架的用户 
        5.4.3 制定和开发框架
       5.5 测试框架集大成者——无需人工干预的自动化回归测试

      第6章 实例研究——单元自动化测试框架解决方案
       6.1 被测对象介绍
        6.1.1 背景简介
        6.1.2 单元测试对象URLEncoder.cencode函数介绍
        6.1.3 对URLEncoder.encode的单元测试案例设计
       6.2 自动化测试框架逐步实施
        6.2.1 第一步:单元测试自动化
        6.2.2 第二步:框架——数据驱动
        6.2.3 第三步:框架——整合开发测试流程
        6.2.4 第四步:框架(高级)——定义自动化测试管理策略和规范
       6.3 单元自动化测试框架实施总结 

      第7章 实例研究——基于UI功能的自动化测试框架解决方案
       7.1 GUI的软件自动化测试原理与技术基础
        7.1.1 GUI软件测试简介
        7.1.2 GUI自动化测试原理与实例演示
        7.1.3 在构建自动化测试框架时的工具因素
       7.2 基于QTP的功能自动化测试框架原型的搭建
        7.2.1 QTP工具简介
        7.2.2 自动化测试框架预期功能目标
        7.2.3 自动化测试框架的实现
      
      第三篇 高级篇——自动化测试框架案例实战

      第8章 自动化测试框架实例——AutomationcCenter(AC)
       8.1 产品测试案例分析
        8.1.1 被测软件产品介绍——某大型分布式企业协同组件介绍
        8.1.2 软件产品测试需求分析
        8.1.3 测试需求矩阵分析
        8.1.4 全球化测试需求分析
       8.2 测试中应用AC的效益分析
        8.2.1 预期成本计算
        8.2.2 预期收益计算
        8.2.3 预期收益比
        8.2.4 AC实施过程规划
       8.3 AC框架中脚本开发规范
        8.3.1 自动化测试中的规范
        8.3.2 规范应该考虑的因素
        8.3.3 有效地推行自动化测试规范
        8.3.4 AC中QTP脚本规范实例
       8.4 AC框架测试报告格式及规范
        8.4.1 总览报告
        8.4.2 细分报告
        8.4.3 AC测试报告总结
       8.5 AC框架中客户端自动化测试解决方案
        8.5.1 AC中QTPcAgent介绍
        8.5.2 “一次编码,多语言运行”的QTP脚本开发思想及实现
        8.5.3 AC中QTPcAgent在企业内部环境的部署
        8.5.4 AC中QTPcAgent收益
       8.6 AC中安装自动化解决方案
        8.6.1 Windows下软件安装:默认式安装与交互式安装
        8.6.2 Linux下软件安装:文本模式与图形化模式
       8.7 AC中自动化管理与控制平台
        8.7.1 AC拓扑结构设计
        8.7.2 AC的工作协作图
        8.7.3 AC工作流程图
       8.8 AC应用经验
        8.8.1 明确而务实的需求
        8.8.2 有效的人员培训
        8.8.3 敏捷高效的反馈机制
       8.9 AC开发技术实例
        8.9.1 基于事务(transaction)机制的测试案例状态栈的实现
        8.9.2 测试案例状态轮询Java实现
        8.9.3 AC与Agent协议原语

      第9章 开发高质量测试脚本
       9.1 案例1:脚本开始处首先进行环境检查
       9.2 案例2:函数入口检查
       9.3 案例3:使用正则表达式处理字符串
       9.4 案例4:脚本健壮性出错处理
       9.5 案例5:测试脚本中参数变量的规范命名
       9.6 案例6:内存的利用和回收
       9.7 案例7:数据驱动

      附录 与自动化测试实施人员的对话实录
回复

使用道具 举报

该用户从未签到

发表于 2009-11-14 17:54:34 | 显示全部楼层
如果你要人造势进行宣传

每人能给多少$?
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-11-14 20:05:40 | 显示全部楼层
支持下!
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-11-14 22:57:05 | 显示全部楼层

回复 2# 的帖子

看您的签名,应该对测试书籍有些看法的。呵呵。我不是卖书的,帖子里也没有加网购的地址。
我想,一个自动化测试工程师想要在这个领域再深入发展一下,应该要思考更多的问题,而不仅仅停留在工具的层面上。毕竟,“形而下谓之具,形而上谓之器”,这本书的目录如果能起到给大家一个启发思考的话,这就OK了。
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-11-14 23:11:28 | 显示全部楼层

回复 3# 的帖子

谢谢老朋友的支持。我希望,这本书能够帮助大家思考几个问题
1.针对我们的项目,什么阶段介入自动化测试,什么时候坚持手工测试?也就是说,自动化测试的目标在那里?自动化测试的效益和成本又如何估算?
2. 怎样做一个高质量的自动化测试解决方案?也就是说能够切切实实减轻测试人员负担,提高测试的效率。这需要从策略和技术上来两方面一起保证。
3. 怎样在团队里推行自动化测试?
因此,这本书不是针对具体的技术,而是着重思路和方法。各位同行,如您对这些问题有过思考和总结,也希望能不吝在这个帖子里分享一下。
回复 支持 反对

使用道具 举报

该用户从未签到

 楼主| 发表于 2009-11-14 23:28:35 | 显示全部楼层
说实话,在我从业的十年里,已经亲身经历或目睹了很多自动化测试实施失败的故事。我思考了一段时间,发现技术并不是关键因素,而起到决定作用的是思路和方法,简单来说,团队里各个角色的人面对自动化测试都有不同的看法和思路,形成了内耗,使得自动化测试偏离了他正确的方向。
所以,很简单的道理,在解决问题之前,首先要做的是达成共识。本书的初衷即是如此。
我在这里就抛砖引玉了。呵呵。欢迎大家发表观点
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2009-11-15 14:59:35 | 显示全部楼层

回复 5# 的帖子

非常赞赏你的自动化实用主义,我们现在也一直往那个方向靠,希望有一天我们的自动化测试可以实现只要产品一发布 通过自动化测试WEB平台的调度 就可以在多平台多系统上 自动进行产品安装 自动部署测试环境 自动下载脚本 自动运行测试 自动上传测试结果到服务器 自动生成测试报告 自动生成根据人员角色特色定制的测试报告邮件给相关人员 自动生成DEFECT 形成一整套的自动化测试解决方案 我们希望我们的自动化测试能真正减轻手工测试人员的工作量 真正提高软件质量

[ 本帖最后由 lantianwei 于 2009-11-15 15:00 编辑 ]
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-6 11:36:21 | 显示全部楼层
自动化测试方面不错的书!支持!

附《软件自动化测试成功之道》这本书的目录:
第一篇 项目实践篇
第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
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-21 15:39:58 | 显示全部楼层

回复 1# 的帖子

看书目,前面讲的思路和理念,还像那么回事。可惜后边自己又搞了一个新的软件出来,难怪没市场
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-21 15:40:53 | 显示全部楼层

回复 8# 的帖子

这本书的话,不如直接去看QTP的帮助文档更直接
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-27 10:02:48 | 显示全部楼层
书店看到这本书
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2010-5-28 11:50:22 | 显示全部楼层
原帖由 mstiunicon 于 2010-5-21 15:40 发表
这本书的话,不如直接去看QTP的帮助文档更直接

错了,这本书重点不是介绍工具,QTP的内容只占很小一部分,主要是基于TestComplete来讲自动化测试项目的
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2015-10-6 11:29
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    发表于 2010-6-3 16:01:17 | 显示全部楼层
    这书正在看
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2010-9-19 10:14:39 | 显示全部楼层
    自动化测试方面不错的书!支持!

    附《软件自动化测试成功之道》这本书的目录:
    第一篇 项目实践篇
    第 ...
    TIB 发表于 2010-5-6 11:36


    有这个电子书吗?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2010-9-19 13:28:41 | 显示全部楼层
    有这个电子书吗?
    FLY000 发表于 2010-9-19 10:14



    这里有连载:
    http://blog.csdn.net/Testing_is_believing/category/672903.aspx
    这里有学习笔记:
    http://www.cnblogs.com/testware/archive/2010/06/26/1765938.html
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2011-7-6 15:31:02 | 显示全部楼层
    没找到电子书,看目录不错哇,要买纸制的了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    发表于 2011-8-31 00:41:34 | 显示全部楼层
    哎,框架,残念~
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-17 06:54 , Processed in 0.086673 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表