好书推荐 好书速递 排行榜 读书文摘

自动化测试最佳实践

自动化测试最佳实践
作者:Dorothy Graham / Mark Fewster
译者:朱少民 / 张秋华 / 赵亚男
副标题:来自全球的经典自动化测试案例解析
出版社:机械工业出版社
出版年:2013-04
ISBN:9787111416760
行业:其它
浏览数:2

内容简介

自动化测试不再是奢侈品而成为软件测试的必需品。随着应用程序和系统规模越来越大、越来越复杂,仅仅依赖手动测试已经无法全面地测试系统。随着技术的变动,越来越多的公司加入到了敏捷开发的阵营中,必须对这些程序进行测试,而且速度要快。测试自动化是非常基本的需求,但有时糟糕的自动化只会适得其反——如何才能知道应该在哪里进行自动化呢?

作者Dorothy Gramham和Mark Fewster之前写的《Software Test Automation》这本书在自动化测试领域影响深远,它为很多公司指明了测试成功的方向。本书讲述了一些公司应用自动化的经历,其中涉及了很多项目,从复杂的政府部门系统到医疗设备,从SAP业务过程开发到Android移动应用和云计算。本书讨论了管理方面和技术方面的因素,讲述了成功和失败的例子、卓越的想法以及灾难性的决定,为读者提供了可以借鉴的经验教训。

本书对于那些考虑、实施、使用、管理测试自动化的人来说是无价之宝。测试人员、开发人员、自动化人员以及自动化架构师、测试经理、项目经理、分析师、QA专家和技术总监都可以从本书受益。

本书主要内容:

敏捷开发中的测试自动化

管理层的支持力度是如何导致自动化成功和失败的

设计良好的测试件结构和抽象层的重要性

如何衡量收益和ROI

管理的因素,包括技能、项目规划、项目领域和项目期望

基于模型测试(MBT)、猴子测试和探索式测试的自动化

标准、沟通、文档和灵活性在企业级测试自动化中的重要性

测试支持性活动的自动化

明智的选择:对哪些测试进行自动化、不要对哪些测试进行自动化

自动化测试的隐藏开销:对其进行的维护和错误分析

测试自动化的正确目标:为什么“为了发现bug”并不是一个好的目标

重点强调一些学到的教训、真知灼见和有用的小技巧

......(更多)

作者简介

Dorothy Graham,软件测试领域的大师级人物,有着40余年的软件测试经验,曾获得软件测试领域欧洲卓越成就奖。世界知名的顾问,Grove Constaltants公司的创始人,在软件测试的学术研究方面有极深的造诣,写作经验也极为丰富,著有软件测试领域的世界名著《Software Test Automation》,影响深远。

Mark Fewster,软件测试领域的大师级人物,在软件测试和自动化领域有30余年的工作经验。现担任英国计算机协会软件测试专家兴趣小组(BCS SIGiST)和信息系统考试委员会 (ISEB)的委员。最近20年致力于为软件测试的各个方面提供培训和咨询服务。经常在国内和国际会议与研讨会上发表演讲,并且与Graham合著了软件测试领域的世界名著《Software Test Automation》。

朱少民,译者,国内软件测试界的领军人物和资深专家,二十多年来一直从事软件测试、质量管理和过程改进等工作,先后出版十多部著作,包括测试方面的畅销书《完美测试》、《全程软件测试》、《轻轻松松自动化测试》、《软件测试方法和技术》等,经常在国内外会议上发表演讲。之前曾任思科-网迅(中国)软件有限公司QA高级总监,目前是同济大学软件学院教授、中国科技大学软件学院教指委委员。

......(更多)

目录

本书赞誉

译者序

前言

第0章 案例研究反思 / 1

0.1 管理层问题 / 1

0.2 技术因素 / 6

0.3 总结 / 12

第1章 敏捷团队的自动化测试之旅:第一年 / 13

1.1 本案例研究的背景 / 14

1.2 整个团队的承诺 / 14

1.3 建立自动化策略 / 15

1.4 利用验收测试驱动开发,使用FitNesse测试GUI / 18

1.5 使用增量方法 / 20

1.6 正确度量 / 20

1.7 庆祝成功 / 21

1.8 引入工程冲刺 / 22

1.9 团队成功 / 22

1.10 持续改进 / 24

1.11 总结 / 24

第2章 终极数据库自动化 / 25

2.1 本案例研究的背景 / 25

2.2 测试中的软件 / 26

2.3 自动化测试的目标 / 27

2.4 开发内部测试工具 / 28

2.5 结果 / 30

2.6 管理自动化测试 / 31

2.7 测试套件和类型 / 31

2.8 现状 / 33

2.9 在经过一段很艰难的时光后才得到的经验教训 / 33

2.10 如何使用自动化测试书中的建议 / 34

2.11 总结 / 36

2.12 致谢 / 36

第3章 移动到云端:TiP的演化——在线的持续回归测试 / 37

3.1 本案例研究的背景 / 38

3.2 将测试移到云端 / 39

3.3 如何实施TiP / 41

3.4 每月服务评审记分卡样例 / 43

3.5 Exchange TiP v2——将TiP迁移到Windows Azure云端 / 46

3.6 我们的心得 / 47

3.7 总结 / 49

3.8 致谢 / 50

第4章 Automator的自动化 / 51

4.1 本案例研究的背景:我的第一份工作 / 52

4.2 我的伟大构想 / 53

4.3 一个突破 / 54

4.4 总结 / 58

第5章 自动化人员自传:从主机到框架的自动化 / 60

5.1 本案例研究的背景 / 61

5.2 主机绿屏自动化测试项目 / 63

5.3 主机和基于脚本工具的差异 / 65

5.4 使用新的基于脚本的工具 / 66

5.5 IBM Maximo的自动化测试 / 70

5.6 总结 / 74

5.7 参考文献 / 74

第6章 项目1:失败!项目2:成功! / 76

6.1 本案例研究的背景 / 77

6.2 项目1:失败 / 77

6.3 项目2:成功 / 78

6.4 下一个时间段:真实地测试 / 85

6.5 总结 / 92

第7章 复杂政府系统的自动化测试 / 93

7.1 本案例研究的背景 / 93

7.2 自动化需求分析 / 94

7.3 我们的自动化测试解决方案——自动化测试和再测试 / 95

7.4 自动化测试解决方案的应用 / 101

7.5 总结 / 102

第8章 设备仿真框架 / 103

8.1 本案例研究的背景 / 103

8.2 设备仿真框架的诞生 / 104

8.3 构建DSF / 105

8.4 自动化目标 / 106

8.5 案例研究 / 107

8.6 没有银弹 / 110

8.7 总结 / 111

8.8 致谢 / 111

第9章 ESA项目中基于模型的测试用例生成 / 112

9.1 本案例研究的背景 / 113

9.2 基于模型的测试和测试用例生成 / 113

9.3 我们的应用:ESA多任务用户服务项目 / 116

9.4 学到的经验和教训 / 121

9.5 总结 / 125

9.6 参考文献 / 126

9.7 致谢 / 126

第10章 10年过去了,项目还在进行 / 127

10.1 本案例研究的背景:之前的故事 / 128

10.2 每月进行自动化测试的保险报价系统 / 128

10.3 接下来发生了什么 / 138

10.4 总结 / 138

第11章 凤凰在灰烬中重生 / 141

11.1 本案例研究的背景 / 141

11.2 凤凰的诞生 / 142

11.3 凤凰的死亡 / 144

11.4 凤凰的重生 / 145

11.5 凤凰的新生 / 148

11.6 总结 / 152

第12章 政府机构运作系统的自动化测试之旅 / 155

12.1 本案例研究的背景 / 156

12.2 该机构的自动化测试 / 156

12.3 2000~2008年 / 159

12.4 三次巧合 / 162

12.5 在测试团队中完善能力 / 165

12.6 未来的方向:继续旅程 / 166

12.7 总结 / 168

第13章 使用硬件接口的自动化可靠性测试 / 169

13.1 本案例的研究背景 / 170

13.2 采取措施的必要性 / 170

13.3 自动化测试启动(增量式方法) / 171

13.4 来自管理层的支持 / 172

13.5 测试框架的进一步开发 / 174

13.6 部署并改进报告形式 / 177

13.7 总结 / 178

第14章 Android应用的基于模型GUI测试 / 180

14.1 本案例研究的背景 / 181

14.2 使用TEMA工具集的MBT / 182

14.3 应用行为建模 / 187

14.4 测试用例的生成 / 190

14.5 连接和适配 / 191

14.6 结果 / 194

14.7 总结 / 194

14.8 致谢 / 195

14.9 参考文献 / 195

第15章 SAP业务流程的自动化测试 / 197

15.1 本案例研究的背景 / 198

15.2 标准和最佳实践 / 200

15.3 eCATT使用实例 / 203

15.4 总结 / 207

15.5 致谢 / 208

第16章 SAP实现的自动化测试 / 209

16.1 本案例研究的背景 / 210

16.2 项目概述 / 211

16.3 第1阶段:概念的证明 / 212

16.4 第2阶段:项目启动 / 217

16.5 总结 / 226

第17章 选择了错误的工具 / 228

17.1 本案例研究的背景 / 228

17.2 (可能)早已存在的自动化测试 / 230

17.3 必要的决策:新工具还是主要维护成本 / 231

17.4 继续推进eggPlant工具 / 233

17.5 我们在eggPlant项目之后还将做什么 / 239

17.6 总结 / 239

第18章 市场交易系统的自动化测试:十年经验和三个框架 / 242

18.1 本案例研究的背景 / 243

18.2 自动化测试框架 / 243

18.3 测试角色 / 245

18.4 抽象层 / 246

18.5 配置 / 248

18.6 成本和投资回报率 / 249

18.7 总结 / 251

第19章 自动化测试不仅仅是回归测试:发挥创造性思维 / 253

19.1 本案例研究的背景 / 254

19.2 任务自动化的两个故事 / 254

19.3 自动化测试用来支持手动探索式测试 / 258

19.4 自动化测试数据交互 / 260

19.5 自动化测试和监测 / 262

19.6 通过组合简单的工具模拟现实世界的负载 / 264

19.7 总结 / 265

19.8 参考文献 / 265

第20章 医疗设备软件需要优秀的自动化软件测试 / 267

20.1 本案例研究的背景 / 268

20.2 每个项目不同方法的比较 / 272

20.3 项目HAMLET / 274

20.4 项目PHOENIX / 275

20.5 项目DOITYOURSELF / 277

20.6 项目MINIWEB / 279

20.7 测试执行 / 280

20.8 结果报告 / 281

20.9 总结 / 283

第21章 通过后门(通过支持手动测试)进行自动化 / 287

21.1 本案例研究的背景 / 288

21.2 我们的技术解决方案 / 288

21.3 通过ISS测试站实现测试自动化 / 291

21.4 实现测试自动化 / 293

21.5 支持手动测试 / 296

21.6 新的手动测试过程 / 298

21.7 总结 / 302

21.8 参考文献 / 303

第22章 使用自动化测试为可移植性测试增值 / 305

22.1 本案例研究的背景 / 306

22.2 可移植性测试:喜欢它或者讨厌它 / 306

22.3 将软件组合起来作为解决方案 / 307

22.4 总结 / 312

22.5 致谢 / 312

第23章 保险公司中的自动化测试:感受我们测试的方法 / 313

23.1 本案例研究的背景 / 313

23.2 应用程序 / 314

23.3 目标 / 315

23.4 我们做的工作 / 315

23.5 教训 / 317

23.6 总结 / 318

第24章 使用测试猴子的冒险之旅 / 320

-24.1 本案例研究的背景 / 320

24.2 自动化回归测试的局限性 / 321

24.3 测试猴子 / 322

24.4 实现测试猴子 / 324

24.5 使用测试猴子 / 325

24.6 收益和局限性 / 328

24.7 总结 / 329

24.8 参考文献 / 329

第25章 在NATS对SYSTEM-OF-SYSTEMS的自动化测试 / 330

25.1 本案例研究的背景 / 331

25.2 测试执行工具的集成 / 333

25.3 工具的试点项目 / 333

25.4 系统使用中(In-Service)的测试模式 / 334

25.5 实现 / 334

25.6 典型的脚本模板 / 336

25.7 得到的教训 / 338

25.8 总结 / 339

第26章 对汽车电子系统进行自动化测试 / 340

26.1 本案例研究的背景 / 341

26.2 自动化项目的目标 / 342

26.3 自动化项目的简史 / 342

26.4 自动化项目的结果 / 344

26.5 总结 / 345

第27章 宏伟目标、改变和测试转型 / 346

27.1 本案例研究的背景 / 346

27.2 管理层的认可 / 347

27.3 构建自动化框架的故事 / 350

27.4 自动化测试框架的描述 / 352

27.5 测试环境 / 355

27.6 度量标准 / 356

27.7 总结 / 358

第28章 自动化探索测试:超越当前时代的例子 / 361

28.1 本案例研究的背景 / 362

28.2 什么是故障管理工具 / 362

28.3 测试故障管理系统中的事务 / 363

28.4 用编程的方法结构化测试用例 / 365

28.5 思考自动化测试的新方式 / 365

28.6 测试故障管理系统的工作流 / 366

28.7 运行中生成测试 / 371

28.8 项目的冲刺阶段 / 372

28.9 发布之后 / 373

28.10 总结 / 374

28.11 致谢 / 374

第29章 测试自动化的轶事 / 375

29.1 三个小故事 / 375

29.2 需要更多对自动化的理解 / 378

29.3 自动化测试的第一天 / 379

29.4 尝试开始实施自动化 / 384

29.5 与管理层作斗争 / 385

29.6 探索性测试自动化:数据库记录锁定 / 387

29.7 在嵌入式硬件-软件计算机环境中进行测试自动化所得到的教训 / 392

29.8 传染性的时钟 / 395

29.9 自动化系统的灵活性 / 397

29.10 使用过多工具(跨部门的支持不够)的故事 / 398

29.11 成功的案例却有着意料之外的结局 / 401

29.12 合作能够克服资源的限制 / 404

29.13 取得了大规模成功的自动化过程 / 405

29.14 测试自动化并不总是像看上去那样 / 409

附录A 工具 / 413

案例研究的作者简介 / 422

......(更多)

读书文摘

......(更多)

猜你喜欢

点击查看