51Testing系列丛书:软件测试技术实战-设计、工具及管理

发表于:2017-7-07 08:51

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:顾翔    来源:51Testing软件测试网原创

  【目 录】
  第1篇  软件测试设计技术
  第1章  软件测试的基本知识 3
  1.1  软件测试的基本理论 4
  1.1.1  软件测试的定义 4
  1.1.2  软件测试术语 5
  1.1.3  软件工程模型 9
  1.1.4  软件测试模型 10
  1.1.5  软件测试方法 12
  1.1.6  软件测试步骤 13
  1.1.7  软件缺陷管理 14
  1.1.8  测试用例 16
  1.1.9  软件测试类型 19
  1.1.10  软件测试曲线 28
  1.1.11  软件的杀虫剂现象 29
  1.2  软件测试的七项基本原则 29
  1.2.1  原则1:软件测试显示存在缺陷 30
  1.2.2  原则2:穷尽软件测试是不可行的 30
  1.2.3  原则3:软件测试尽早介入 30
  1.2.4  原则4:缺陷集群性 30
  1.2.5  原则5:杀虫剂悖论 31
  1.2.6  原则6:软件测试活动依赖于软件测试背景 31
  1.2.7  原则7:不存在缺陷(即有用系统)的谬论 31
  1.3  验证与确认的区别 31
  1.4  本章总结 33
  1.4.1  介绍内容 33
  1.4.2  案例 34
  第2章  传统的软件测试的设计方法 36
  2.1  运用等价类/边界值设计测试用例 37
  2.1.1  等价类 37
  2.1.2  边界值 38
  2.1.3  基于输出的等价类/边界值划分 39
  2.1.4  测试用例的设计 39
  2.1.5  案例 41
  2.2  运用决策表设计测试用例 41
  2.2.1  四边形类型判断系统 41
  2.2.2  用户登录系统 43
  2.2.3  飞机票定价系统 45
  2.3  运用状态转换图设计测试用例 48
  2.3.1  从状态转换图到状态转换树 49
  2.3.2  从状态转换图到状态转换表 51
  2.3.3  业务流程状态转化法 52
  2.4  运用决策树设计测试用例 53
  2.4.1  文本编辑软件 53
  2.4.2  机票购买系统 54
  2.5  运用正交法设计测试用例 55
  2.5.1  正交法 56
  2.5.2  浏览器组合软件测试 56
  2.6  软件白盒测试 58
  2.6.1  语句覆盖测试 59
  2.6.2  分支覆盖测试 61
  2.6.3  条件覆盖测试 63
  2.6.4  判定/条件覆盖测试 65
  2.6.5  MC/DC(修订的条件/分支软件测试)覆盖测试 66
  2.6.6  路径覆盖测试 67
  2.6.7  控制流测试 68
  2.6.8  单元测试中的基于代码的功能测试 69
  2.6.9  总结 70
  2.7  测试用例设计的若干错误观点 70
  2.7.1  能发现到目前为止没有发现的缺陷的用例是好的用例 70
  2.7.2  测试用例应该详细记录所有的详细操作信息 70
  2.7.3  测试用例设计出来后是不用维护的 71
  2.7.4  测试用例不应该包含实际的数据 71
  2.8  本章总结 71
  2.8.1  介绍内容 71
  2.8.2  案例 72
  第3章  探索式软件测试设计方法 74
  3.1  探索式软件测试中用到的一些方法 75
  3.1.1  表单输入的测试探索 75
  3.1.2  模糊查询输入框输入数据的测试探索 77
  3.1.3  对文件的探索 78
  3.1.4  登录界面的测试探索 79
  3.1.5  根据机器的声音探索 79
  3.1.6  通过查看Log日志探索 80
  3.1.7  在开头/结尾处进行探索 80
  3.1.8  多次执行同样操作进行探索 80
  3.1.9  通过复制/粘贴进行探索 81
  3.1.10  通过测试结果进行探索 82
  3.1.11  利用反向操作进行探索 83
  3.1.12  利用名词和动词进行探索 83
  3.1.13  运用提问进行探索 84
  3.1.14  函数级别的黑盒测试探索 85
  3.1.15  运用不懂技术和业务的人员进行探索 85
  3.1.16  并发操作的测试探索 85
  3.1.17  页面刷新功能的测试探索 87
  3.1.18  不常用功能的测试探索 87
  3.1.19  URL栏的测试探索 87
  3.1.20  突发事故的测试探索 88
  3.1.21  界面链接的测试探索 88
  3.1.22  需要多步操作来完成一个事务的测试探索 89
  3.1.23  老功能的测试探索 89
  3.1.24  重灾区的测试探索 90
  3.1.25  强迫症测试法的测试探索 90
  3.1.26  升级的测试探索 91
  3.1.27  总结 91
  3.2  基于场景的测试 92
  3.3  本章总结 94
  3.3.1  介绍内容 94
  3.3.2  案例 95
  第4章  基于风险的软件测试 97
  4.1  基于风险的软件测试方法 98
  4.2  软件测试风险级别确认与调整 101
  4.2.1  确定风险级别 101
  4.2.2  调整风险级别 103
  4.3  本章总结 105
  4.3.1  介绍内容 105
  4.3.2  案例 105
  第5章  专项软件测试设计 106
  5.1  性能测试 107
  5.1.1  性能测试的定义 107
  5.1.2  由于性能测试没做到位发生的缺陷 107
  5.1.3  性能指标 107
  5.1.4  性能计数器 110
  5.1.5  性能测试类型 118
  5.1.6  性能测试可以发现的问题 119
  5.1.7  性能调优 119
  5.1.8  性能测试角色 121
  5.1.9  性能测试工具 122
  5.1.10  性能测试流程 123
  5.2  嵌入式软件的基本测试方法 125
  5.2.1  嵌入式软件测试流程 125
  5.2.2  单元测试和集成测试 127
  5.2.3  插桩技术 127
  5.2.4  嵌入式软件测试工具 127
  5.3  本章总结 129
  5.3.1  介绍内容 129
  5.3.2  案例 129
  第6章  云计算、大数据的软件测试方法 131
  6.1  如何对大数据软件产品进行软件测试 132
  6.1.1  前言 132
  6.1.2  新产品的软件测试 132
  6.1.3  老产品的升级测试 132
  6.2  云计算软件测试应注意的问题 133
  6.2.1  云计算中增加了供应商角色,给云计算测试带来复杂性 133
  6.2.2  云计算中使用虚拟技术,给性能测试带来的影响 134
  6.2.3  增加按照使用量收费的软件测试方法 134
  6.2.4  安全性测试 135
  6.2.5  定位问题 135
  6.2.6  法律法规问题 136
  6.2.7  迁移性软件测试 136
  6.2.8  功能测试 137
  6.2.9  自动化测试 138
  6.3  云计算的优缺点 138
  6.3.1  优点 138
  6.3.2  缺点 140
  6.4  文档、环境、数据在云软件测试中的管理 141
  6.4.1  文档管理 141
  6.4.2  云计算软件测试环境管理 142
  6.4.3  云计算软件测试数据管理 143
  6.4.4  变更管理与版本控制 143
  6.5  本章总结 144
  6.5.1  介绍内容 144
  6.5.2  案例 144
  参考文献 145
  第2篇  软件测试工具
  第7章  软件测试工具总览 149
  7.1  软件测试工具介绍 150
  7.1.1  普通软件测试工具推荐 150
  7.1.2  APP软件测试工具 150
  7.1.3  软件测试工具介绍 151
  7.1.4  软件测试工具的类型 153
  7.2  关于自动化测试工具 154
  7.2.1  自动化测试工具本身也是软件,也要重视工具本身的质量 154
  7.2.2  自动化测试工具要随用户的需求变化而变化 155
  7.2.3  不是所有的功能都可以作自动化测试 155
  7.2.4  探索式软件测试也可由自动化测试来实现 155
  7.2.5  是否需要采用自动化测试,需要考虑测试的效率 155
  7.2.6  自动化测试可以覆盖软件测试中的每个阶段 156
  7.2.7  软件测试自动化是敏捷开发强有力的工具 156
  7.2.8  不要盲目选用现有的自动化测试工具 156
  7.2.9  各种类型的自动化测试工具的比较 157
  7.3  本章总结 158
  第8章  单元测试工具 160
  8.1  单元测试工具JUnit 4如何在Eclipse中使用 161
  8.1.1  JUnit 4环境的配置 161
  8.1.2  JUnt4测试用例的运行和调试 164
  8.1.3  对代码的详细介绍 166
  8.1.4  对JUnit 4的高级操作 167
  8.1.5  介绍一下断言 171
  8.1.6  案例分析 173
  8.2  本章总结 175
  8.2.1  介绍内容 175
  8.2.2  案例 175
  第9章  性能测试工具 176
  9.1  LoadRunner工具介绍 177
  9.1.1  LoadRunner简介 177
  9.1.2  LoadRunner性能测试工具架构 177
  9.1.3  LoadRunner基本功能使用技巧 178
  9.1.4  用LoadRunner实现APP压力测试 207
  9.1.5  案例 209
  9.2  本章总结 214
  9.2.1  介绍内容 214
  9.2.2  案例 214
  第10章  缺陷管理工具 215
  10.1  Bugzilla使用指南 216
  10.1.1  什么是Bugzilla 216
  10.1.2  为什么使用Bugzilla 216
  10.1.3  新建一个Bugzilla账号 216
  10.1.4  产品和结构 217
  10.1.5  Bug报告状态分类和Bug处理意见 217
  10.1.6  指定处理人 218
  10.1.7  超链接 218
  10.1.8  概述 218
  10.1.9  硬件平台和操作系统 218
  10.1.10  版本 218
  10.1.11  Bug报告优先级 218
  10.1.12  Bug状态 218
  10.1.13  报告人 219
  10.1.14  邮件抄送列表 219
  10.1.15  从属关系 219
  10.1.16  附加描述 219
  10.1.17  Bug查找 219
  10.1.18  Bug列表 220
  10.1.19  用户属性设置 220
  10.2  案例 220
  10.3  本章总结 225
  10.3.1  介绍内容 225
  10.3.2  案例 226
  第11章  APP软件测试工具 227
  11.1  UiAutomator工具介绍 228
  11.1.1  使用UiAutomator工具的优点 229
  11.1.2  下载和配置 229
  11.1.3  开发测试代码 232
  11.1.4  UiAutomator API详解 245
  11.1.5  案例分析 258
  11.2  Selenium和WebDriver工具入门介绍 264
  11.2.1  环境安装 265
  11.2.2  WebDriver对浏览器的支持 268
  11.2.3  操作指南 269
  11.2.4  案例分析 272
  11.3  Monkey工具介绍 293
  11.3.1  Monkey的特征 293
  11.3.2  基本语法 293
  11.3.3  检查安卓设备中有什么包 293
  11.3.4  Monkey的参数列表 294
  11.3.5  利用Monkey进行稳定性测试 297
  11.3.6  Monkey脚本 298
  11.4  精准测试工具--星云测试平台 298
  11.4.1  精准测试理念 298
  11.4.2  星云测试工具客户端下载与配置 299
  11.4.3  项目编译 300
  11.4.4  执行测试 305
  11.5  本章总结 311
  11.5.1  介绍内容 311
  11.5.2  案例 312
  参考文献 313
  第3篇  软件测试管理
  第12章  软件测试与质量文档 317
  12.1  研发过程管理工作规范 318
  12.2  飞天e-购网软件测试报告 360
  12.3  BBS软件测试报告 375
  12.4  数字电视机顶盒中间件集成测试计划书 378
  12.5  BBS主测试计划 383
  12.6  BBS级别测试计划 392
  12.7  软件缺陷管理流程 398
  12.8  本章总结 409
  第13章  软件测试管理 410
  13.1  软件测试团队组成结构分析 411
  13.1.1  方案一 411
  13.1.2  方案二 412
  13.2  软件测试过程 413
  13.3  软件测试的独立性 417
  13.4  从微软裁员首裁软件测试工程师谈起 419
  13.5  软件测试的本质 421
  13.5.1 纯软件测试方法介绍 421
  13.5.2  纯软件测试方法在Sprint中的运用 422
  13.5.3  纯软件测试方法与软件质量的关系 423
  13.6  对敏捷开发的一些思考 424
  13.6.1  简介 424
  13.6.2  敏捷开发的优点 424
  13.6.3  敏捷开发的缺点 426
  13.6.4  总结 427
  13.7  精益创业与探索式软件测试 427
  13.8  本章总结 428
  13.8.1  介绍内容 428
  13.8.2  案例 429
  第14章  软件测试工程师的职业素质 430
  14.1  如何成为一名优秀的软件测试工程师 431
  14.1.1  起码有3年以上的软件开发经验 431
  14.1.2  具有逆向思维的能力 432
  14.1.3  具有敏锐的洞察力和锲而不舍的精神 432
  14.1.4  具有发散性思维的能力 432
  14.1.5  擅于同软件开发工程师沟通 432
  14.1.6  擅于同领导沟通 433
  14.1.7  掌握一些自动化软件测试工具和脚本 433
  14.1.8  擅于学习 434
  14.1.9  提高自己的表达能力 434
  14.1.10  了解业务知识 434
  14.1.11  培养对软件测试的兴趣 434
  14.1.12  追求完美 434
  14.2  如何成为一名优秀的软件质量保证工程师 435
  14.2.1  具有软件开发,软件测试和实施经验 435
  14.2.2  具有一定的统计学基础 435
  14.2.3  强大的沟通能力 436
  14.2.4  专业的管理和质量知识 436
  14.3  软件测试好书推荐 436
  14.3.1  《软件测试的艺术》 436
  14.3.2  《赢在测试2-中国软件测试专家访谈录》 437
  14.3.3  《探索式软件测试》 437
  14.3.4  《探索式测试实践之路》 438
  14.3.5  《探索吧!深入理解探索式软件测试》 438
  14.3.6  《云服务测试如何高效地进行云计算测试》 438
  14.3.7  《Google软件测试之道》 438
  14.3.8  《软件测试经验与教训》 438
  14.3.9  《学习要像加勒比海盗》 439
  14.4  云计算中发生的事故 439
  14.4.1  Google应用引擎平台宕机 439
  14.4.2  Google Gmail和日历服务中断 439
  14.4.3  Google Voice服务宕机 439
  14.4.4  亚马逊S3服务故障 440
  14.4.5  亚马逊EC2云计算服务遭到僵尸网络攻击 440
  14.4.6  微软爆发BPOS服务中断事件 440
  14.4.7  Amazon主页故障 440
  14.5  ISTQB和CSTQB 441
  14.6  本章总结 442
  参考文献

51Testing软件测试网将在近期对本书部分章节进行独家连载,敬请关注

查看更多《51Testing软件测试网作品系列》书籍:http://www.51testing.com/html/36/category-catid-136.html

33/3<123
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号