资源名称:完美测试-软件测试系列最佳实践

内容简介:

《完美测试:软件测试系列最佳实践》每个人都怀有梦想或理想,测试人员也不例外,希望将自己的工作做得比较完美。《完美测试:软件测试系列最佳实践》力求通过一些典型案例告诉大家什么是完美测试,又如何做到完美测试。在给出的例子中,不仅包括功能测试、功能的异常测试、不同平台的功能测试和一些崩溃问题的处理,而且包括国际化测试、性能测试、用户体验测试、Accessibility测试等,并用较大的篇幅讨论了自动化测试。为了达到完美测试,建立良好的测试体系、使产品具有可测试性以及缺陷预防等更为重要,《完美测试:软件测试系列最佳实践》也做了讨论。《完美测试:软件测试系列最佳实践》还展示了软件测试之美,使读者可以领会到软件测试的距离之美、空间之美、技巧之美、辩证之美以及贯穿测试过程的平衡之美。虽然《完美测试:软件测试系列最佳实践》还很难覆盖完美测试应具备的各种方法和实践,但目的在于抛砖引玉,使读者能通过最有效的手段(包括方法、技术和工具)完成所有必要的测试,实现事先所要求的需求和代码的测试覆盖率,最终能准确地给出软件产品一个完整的质量评估,使测试达到相对完美的水平。

作者简介:

朱少民:网迅(中国)软件有限公司QA高级总监、CSTQB资深专家、中国科技大学软件学院教指委委员。最近多年来一直从事软件测试、质量管理和过程改进等工作,先后出版专著《全程软件测试》、《软件测试》和《软件工程导论》,并主编了《软件测试方法和技术》等多部高等学校的精品教材。. 个人博客:http://blog.csdn.net/KerryZhu

资源目录:

第1章 软件测试的金字塔体系 1

1.1 从1个中心到5个要素 3

1.2 5个工作面 5

1.3 8组关系 6

1.4 13项原则 8

1.5 21个关键域 11

1.6 34个方法 15

第2章 测试架构从何而来 17

2.1 什么是测试架构 18

2.2 测试领域架构 21

2.3 自动化测试架构之说 25

2.3.1 为何要建立自动化测试架构 25

2.3.2 解决什么问题 26

2.3.3 软件开发框架的启发 30

2.3.4 测试自动化框架的基本构成 31

2.4 谁能成为测试架构师 34

第3章 如何让缺陷无处藏身 38

3.1 什么是软件可测试性 39

3.2 sock模型和james bach的观点 41

.3.3 tdd和代码的可测试性 43

3.4 设计的可测试性 48

3.5 需求的可测试性 51

第4章 可以像这样设计测试用例吗 53

4.1 从需求到测试用例 53

4.2 基于流程图设计测试用例 56

4.3 基于uml视图的测试用例设计 61

4.4 小结 65

第5章 从虚拟测试环境到一键部署 67

5.1 虚拟出更多的机器 67

5.2 虚拟的疑问 70

5.3 另一种把资源用到极致的方法 71

5.4 一键部署 73

第6章 客户端的gui测试自动化 79

6.1 初识自动化测试 79

6.2 困惑 80

6.3 建议 81

6.4 三类标准控件的不同处理办法 82

6.4.1 标准控件 83

6.4.2 自定义控件 84

6.4.3 自定义控件库 84

6.5 微软的uia和msaa 85

6.5.1 msaa 85

6.5.2 uia 86

6.5.3 windows automation api 3.0 88

6.6 和开发人员合作的好处 88

第7章 后台自动化测试 90

7.1 什么是后台测试 90

7.1.1 后台测试的特点 90

7.1.2 后台测试的自动化 91

7.2 后台自动化测试的统一脚本控制 92

7.2.1 自动化测试框架 93

7.2.2 自动化测试脚本的分层实现 93

7.3 后台自动化测试实例 95

7.3.1 测试工具树形图 95

7.3.2 基于staf框架的python脚本 97

7.4 后台大规模性能测试 102

7.4.1 测试工具的管理 103

7.4.2 同步及异步控制模式 103

7.4.3 测试逻辑的同步执行问题 104

7.4.4 测试结果的收集 106

7.5 小结 107

第8章 高亢之龙——jmeter后台自动化测试 108

8.1 潜龙勿用,见龙在田 109

8.2 终日乾乾,或跃于渊 113

8.3 飞龙在天 117

8.4 亢龙有悔 121

8.5 小结 123

第9章 重读探索式软件测试 124

9.1 概念及目标 124

9.2 关键要素 125

9.3 常见的认识误区 127

9.4 探索思维“十六”计 128

9.5 如何应用探索式测试 136

9.6 机遇与挑战 138

9.7 小结 139

第10章 完美的功能测试 140

10.1 测试准备 141

10.2 测试计划 145

10.3 功能测试用例的设计 147

10.4 用例执行的窍门 149

10.5 功能测试的三步曲 150

10.6 查找遗漏问题的七大招 152

10.7 基于组件元素的通用测试点 154

10.8 基于系统行为和操作习惯的测试点 156

第11章 异常测试的方法与技巧 158

11.1 异常测试定义与范围 159

11.2 技巧之一:改(以彼之道,还施彼身) 160

11.2.1 更改“自身” 160

11.2.2 更改“相关” 161

11.3 技巧之二:借(他山之石,可以攻玉) 162

11.3.1 借code coverage发现异常 162

11.3.2 借junit+jmockit测试异常 166

11.3.3 借iptables创造异常 167

11.4 异常测试其他技巧 169

11.5 小结 170

第12章 如何在苹果上找虫 171

12.1 造成mac系统崩溃的常见操作 171

12.2 通过崩溃日志来定位问题 172

12.3 通过console来定位崩溃问题 176

12.4 通过shark工具来定位freeze问题 176

第13章 穿越时空的国际化和本地化测试 182

13.1 案例背景 183

13.2 时区及夏令时 186

13.3 有关时区的应用测试 188

13.4 本地化测试的方方面面 190

13.4.1 语言标识 190

13.4.2 文化生活 191

13.4.3 书写习惯 192

13.5 本地化测试的主要方法 193

13.6 本地化测试的常见问题 194

13.6.1 人力资源短缺 194

13.6.2 开发人员、翻译组、资源文件维护者与测试人间之间的协作 195

13.6.3 基础工作的缺乏 196

第14章 用户体验的享受 198

14.1 最终用户特点 198

14.1.1 绝大多数的中间用户 199

14.1.2 不同用户需求 200

14.2 生活中的用户体验 203

14.2.1 用户体验的复杂性 203

14.2.2 视觉反馈 204

14.2.3 听觉反馈——声音 211

14.3 ue测试策略 213

14.3.1 少就是多 214

14.3.2 工具就放在手边 215

14.3.3 提供非模态的反馈 215

14.3.4 提供符合情景的信息 216

14.3.5 提供直接的操作和图形输入 217

14.3.6 不要用对话框来报告常态内容 218

14.3.7 提供选择而不是提问 218

14.3.8 优化响应能力以调节延迟时间 219

14.3.9 多平台多浏览器支持 220

14.4 小结 221

第15章 可能没听说过的测试——accessibility测试 223

15.1 测试的范围和要点 224

15.2 测试工具 226

15.2.1 soatest 226

15.2.2 jaws 228

15.2.3 actf adesigner 229

15.3 accessibility测试注意事项 231

15.3.1 规范快捷键,尽量与系统操作键统一 231

15.3.2 应尽早制定accessibility checklist 232

15.3.3 注意对其他任务的影响 232

15.3.4 restore case要定义明确 232

15.3.5 应从用户使用习惯的角度去考虑测试需求 233

第16章 谁说了算?——代码覆盖率 234

16.1 衡量代码覆盖率软件的引入 235

16.2 c/c++代码覆盖率测试工具bullseyecoverage 237

16.3 开源测试代码覆盖率工具emma 239

16.4 代码覆盖率报告的分析 240

16.5 代码覆盖率工具的相关运用 242

16.6 代码覆盖率工具应用的局限性 243

16.7 小结 244

第17章 bug的“美丽人生” 246

17.1 报告新的bug 246

17.1.1 发现bug 247

17.1.2 隔离分析bug 248

17.1.3 提交一个新的bug 251

17.2 处理已经提交的bug 254

17.3 验证bug 256

17.4 案例说明 256

第18章 从亡羊补牢到未雨绸缪 260

18.1 防止“病从口入” 261

18.2 缺陷rca三步曲 262

18.2.1 缺陷的分类统计分析 263

18.2.2 深度分析找到根本原因 266

18.2.3 找到解决问题的办法 268

第19章 云中漫步——后端测试流程管理 269

19.1 欢迎来到“云”的世界 271

19.1.1 为什么要进行后台测试 271

19.1.2 shindig框架的部署 273

19.2 你不是她,但你处处为她着想 276

19.2.1 以用户行为为核心 276

19.2.2 以用户数据为核心 277

19.2.3 “虫虫”哪里走 278

19.3 进入云,必须做好聪明又狂野的准备 279

19.3.1 其徐如林——周密计划,才能有条不紊 280

19.3.2 其疾如风——快速执行 281

19.3.3 侵掠如火——干吧,我们就是为这个来的 282

19.3.4 不动如山——牢固占领,“云”上一分钟,“云”下十年功 283

19.4 小结 285

第20章 敏捷测试——速度之美 286

20.1 敏捷开发和传统瀑布模型比较 286

20.2 快速迭代、发布可工作的软件 288

20.2.1 面对面交流和简洁的文档 290

20.2.2 基于用户故事的测试计划 292

20.2.3 面向敏捷开发团队的高效测试用例 294

20.2.4 持续集成和持续测试框架hudson 295

20.2.5 有效管理和跟踪测试任务 297

20.2.6 快速跟踪和解决缺陷 300

20.3 持续回顾和调整 304

20.4 小结:速度之美的真正含义 307

第21章 再谈敏捷测试的方法和实践 310

21.1 测试驱动开发与敏捷测试 310

21.2 敏捷测试自动化 313

21.2.1 自动化测试策略 313

21.2.2 自动化测试框架 314

21.2.3 敏捷测试工具 315

21.3 敏捷测试及其管理 316

21.3.1 敏捷测试流程的优化 316

21.3.2 新功能的测试和回归测试策略 317

21.3.3 基于需求测试和基于风险测试的平衡 318

21.4 有关敏捷测试的思考 319

21.4.1 探索式测试的地位 320

21.4.2 测试人员在敏捷方法中的价值 321

21.5 小结 322

后记——从“软件测试艺术”讲座品味完美 323

空间之美 324

距离之美 324

技巧之美 325

辩证之美 326

白盒测试方法vs.黑盒测试方法 327

静态测试vs.动态测试 328

被动测试vs.主动测试 329

手工测试vs.自动化测试 330

计划测试vs.探索式测试 332

新功能测试vs.回归测试 332

附录a 敏捷方法的相关概念 334

附录b 软件测试的详细分类 336

参考文献 342

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。