软件测试与质量保证(微课版)

软件工程畅销书作者吕云翔老师在软件测试和软件质量管理领域新作
分享 推荐 0 收藏 4 阅读 258
吕云翔 (作者) 978-7-115-65893-7

关于本书的内容有任何问题,请联系 徐柏杨

(1)循序渐进。本书将内容分为“理论基础”“工具应用”“案例实践”和“质量保证”四个部分,层次分明,通过循序渐进的讲述知识,便于读者学习与理解。
(2)实用性强。本书介绍理论的时候均结合相关案例进行讲解,对不同的测试方法和技术选用不同的案例,做到有所针对,这也使得基础知识更加具体形象,同时也更容易被理解和应用。
(3)实时性强。本书所选案例均是近年来的真实案例,可以代表当代技术特征和需求环境。本书介绍的工具均是当前常见的软件测试工具;测试方法也是时下流行的测试方法,其中,面向对象测试的内容更是符合软件测试技术的发展方向。

内容摘要

本书在内容上较为全面地、系统地涵盖了当前软件测试领域的理论和实践知识,反映了当前最新的软件测试理论、标准、技术和工具。全书共16章,包括:软件测试概述、软件测试过程模型、静态测试与动态测试、白盒测试、黑盒测试、单元测试、集成测试、系统测试、验收测试、软件测试管理、面向对象的软件测试、软件测试自动化、缺陷跟踪管理、单元测试工具JUnit、接口测试工具、性能测试工具JMeter、网上书店系统测试、软件质量保证。每章内容均有实际案例做补充,以加深读者对软件测试技术和过程的理解,做到理论与实践相结合。
本书可作为高等院校相关专业软件测试的教材或教学参考书,也可以供从事计算机应用开发的各类技术人员参考。

目录

内容提要 1
前言 2
目录 5
第 一部分 软件测试基础 15
第 1章 软件测试概述 16
1.1 软件测试的背景与意义 16
1.1.1著名软件错误案例 16
1.1.2软件的定义及分类方法 18
1.1.3软件工程概述 19
1.2 软件测试的基本概念 21
1.2.1 软件缺陷的定义 21
1.2.2 软件缺陷产生的原因 22
1.2.3 软件测试的定义 23
1.3 软件测试的目标与原则 23
1.3.1 软件测试的目标 23
1.3.2 软件测试的原则 24
1.4 软件测试的分类 26
1.4.1 按测试阶段 26
1.4.2 按是否需要执行被测试软件 27
1.4.3 按是否需要查看代码 28
1.4.4 按测试执行时是否需要人工干预 29
1.4.5 其他测试类型 30
1.5 本章小结 30
习题1 31
第 2章 软件测试过程模型 33
2.1 软件测试模型及测试过程模型概述 33
2.1.1 软件测试模型的定义 33
2.1.2 软件测试过程模型的定义 34
2.1.3 软件测试过程模型的作用和意义 34
2.2 经典的软件测试过程模型 34
2.2.1 V模型 34
2.2.2 W模型 35
2.3 软件测试过程改进模型 36
2.3.1 TMM测试成熟度模型 37
2.3.2 TPI模型 37
2.3.3 其他测试改进模型 38
2.4 本章小结 39
习题2 39
第3章 软件测试方法 42
3.1 静态测试 42
3.1.1 代码检查 42
3.1.2 静态结构分析 45
3.2 动态测试 47
3.2.1 主动测试 48
3.2.2 被动测试 48
3.3 白盒测试 48
3.3.1 程序插桩法 49
3.3.2 逻辑覆盖法 50
3.3.3 基本路径法 57
3.4 黑盒测试 60
3.4.1 黑盒测试方法 60
3.4.2 白盒测试和黑盒测试比较 74
3.5 本章小结 75
习题3 75
第4章 软件测试过程 79
4.1 单元测试 79
4.1.1 单元测试简介 79
4.1.2 单元测试的内容 80
4.1.3 单元测试的过程 82
4.1.4 单元测试相关案例 82
4.2 集成测试 86
4.2.1 集成测试简介 86
4.2.2 集成测试的内容 87
4.2.3 集成测试的过程 89
4.2.4 集成测试的相关策略 89
4.2.5 集成测试常用方法 91
4.2.6 集成测试相关案例 95
4.3 系统测试 101
4.3.1 系统测试简介 101
4.3.2 系统测试的内容 102
4.3.3 系统测试相关案例 116
4.4 验收测试 125
4.4.1 验收测试简介 125
4.4.2 验收测试的内容 126
4.4.3 验收测试的过程 127
4.4.4 验收测试的阶段 129
4.4.5 验收测试相关案例 132
4.5 本章小结 134
习题 4 135
第5章 软件测试管理 138
5.1 软件测试管理概述 138
5.1.1 软件测试项目 138
5.1.2 软件测试项目管理 139
5.1.3 软件测试项目范围管理 140
5.2 软件测试管理计划 140
5.2.1 软件测试计划制定 140
5.2.2 软件测试计划执行 141
5.3 软件测试文档 142
5.3.1 软件测试文档的作用 142
5.3.2 主要的软件测试文档 143
5.4 测试组织和人员管理 145
5.4.1 测试人员及组织结构 145
5.4.2 测试人员的沟通和激励 146
5.4.3 测试人员的培训 147
5.5 软件测试过程控制 148
5.5.1 测试项目的过程管理 148
5.5.2 软件测试的配置管理 149
5.5.3 软件测试的风险管理 150
5.5.4 软件测试的成本管理 152
5.6 本章小结 153
习题 5 153
第6章 面向对象软件测试 156
6.1 面向对象技术概述 156
6.1.1 面向对象的基本概念 156
6.1.2 面向对象的开发方法 160
6.1.3 面向对象的分析与设计 161
6.1.4 面向对象的模型技术 163
6.2 面向对象软件的测试策略 165
6.2.1 面向对象的单元测试 165
6.2.2 面向对象的集成测试 166
6.2.3 面向对象的系统测试 168
6.2.4 面向对象的回归测试 168
6.3 面向对象软件的测试用例设计 169
6.3.1 面向对象测试用例设计的基本概念 169
6.3.2 面向对象编程对测试的影响 170
6.3.3 基于故障的测试 171
6.3.4 基于场景的测试 171
6.3.5 表层结构和深层结构的测试 172
6.4 面向对象的软件测试案例 172
6.4.1 HelloWorld类的测试 172
6.4.2 Date.increment方法的测试 173
6.5 本章小结 176
习题 6 176
第二部分 工具应用 179
第7章 软件测试自动化 180
7.1 软件测试自动化概述 180
7.1.1 手工测试与自动化测试 180
7.1.2 自动化测试的优缺点 181
7.2 自动化测试的原理方法 182
7.2.1 代码分析 182
7.2.2 捕获和回放 183
7.2.3 录制回放 183
7.2.4 脚本技术 184
7.2.5 自动化比较 185
7.3 自动化测试的开展 185
7.3.1 自动化测试的引入原则 186
7.3.2 自动化测试的生命周期 187
7.3.3 自动化测试的成本 189
7.3.4 自动化测试的导入时机 189
7.3.5 自动化测试的人员要求 189
7.3.6 自动化测试存在的问题 190
7.4 自动化测试的方案选择 191
7.4.1 自动化测试对象分析 191
7.4.2 确定自动化测试方案 192
7.5 自动化测试的工具 195
7.5.1 自动化测试工具的特征 195
7.5.2 自动化测试工具的分类 196
7.5.3 自动化测试工具的选择原则 200
7.6 本章小结 201
习题 7 201
第8章 缺陷跟踪管理 204
8.1 缺陷管理工具概述 204
8.1.1 缺陷管理的目的与意义 204
8.1.2 缺陷管理工具的分类 205
8.1.3 缺陷管理工具的选择 205
8.2 项目管理工具Redmine 206
8.2.1 Redmine的特点 206
8.2.2 Redmine的缺陷跟踪 207
8.3 缺陷管理工具Bugzilla 213
8.3.1 Bugzilla的特点 213
8.3.2 Bugzilla的缺陷跟踪 214
8.4 问题跟踪工具JIRA 216
8.4.1 JIRA的特点 216
8.4.2 JIRA的缺陷跟踪 217
8.5 本章小结 222
习题 8 222
第9章 JUnit单元测试 225
9.1 JUnit概述 225
9.1.1 JUnit简介 225
9.1.2 JUnit组成 227
9.2 JUnit测试过程 231
9.2.1 JUnit测试用例编写 232
9.3 JUnit安装与集成 233
9.3.1 JUnit简单安装 233
9.3.2 JUnit与IDE集成 235
9.4 JUnit使用案例 239
9.4.1 案例介绍 239
9.4.2 常规测试 240
9.4.3 使用JUnit测试 241
9.5 本章小结 254
习题 9 254
第 10章 接口测试工具 257
10.1 接口测试概述 257
10.1.1 接口测试工具的分类 257
10.1.2 接口测试工具的选择 258
10.2 SoapUI 258
10.2.1 SoapUI的特点 258
10.2.2 SoapUI的使用 259
10.3 JMeter 260
10.3.1 JMeter的特点 260
10.3.2 JMeter的使用 261
10.4 Postman 263
10.4.1 Postman的特点 263
10.4.2 Postman的使用 264
10.5 本章小结 265
习题 10 266
第 11章 性能测试工具JMeter 268
11.1 JMeter性能测试概述 268
11.1.1 JMeter性能测试的主要特点 268
11.1.2 JMeter与LoadRunner性能测试工具对比 269
11.2 JMeter的测试环境搭建 270
11.2.1 安装Java 270
11.2.2 下载和安装JMeter 270
11.2.3 配置JMeter环境变量 270
11.2.4 启动运行JMeter 271
11.3 JMeter的基本概念 271
11.3.1 JMeter的组件和术语 271
11.3.2 JMeter的工作流程 271
11.4 创建JMeter性能测试计划和方案设计 272
11.4.1 用户场景剖析和业务建模 272
11.4.2 确定性能目标 272
11.4.3 性能测试方案设计 272
11.4.4 制定测试计划的实施时间 273
11.5 JMeter测试脚本开发、测试执行和结果分析 274
11.5.1 JMeter性能测试脚本编写-HTTP请求 274
11.5.2 JMeter性能测试脚本编写-结果验证 276
11.5.3 JMeter性能测试脚本编写-验证断言 279
11.5.4 JMeter性能测试脚本编写-信息头管理器 282
11.5.5 JMeter性能测试-关联 285
11.5.6 JMeter结果分析-聚合报告 289
11.5.7 JMeter结果分析-图形结果 290
11.6 本章小结 292
习题 11 292
第 12章 Python的自动化测试 295
12.1 Selenium基础及环境搭建 295
12.1.1 Selenium简介 295
12.1.2 Selenium2工作原理 295
12.1.3 Python的下载安装 296
12.1.4 在Anaconda虚拟环境中安装Python 297
12.1.5 Selenium Python Client的下载与安装 299
12.1.6 Selenium WebDriver的下载与安装 300
12.1.7 PyCharm的下载安装 301
12.1.8 第 1个python+Selenium 测试用例 302
12.1.9 Webdriver的常用命令 303
12.1.10 Page Object设计模式 306
12.2 Python的unittest单元测试框架 311
12.2.1 unittest单元测试框架的使用 311
12.2.2 Python中日志Logger记录 317
12.2.3 测试报告的输出 320
12.3 基于Pytest+Allure的自动化测试 322
12.3.1 Pytest介绍 322
12.3.2 Pytest及Allure的安装 323
12.3.3 基于Pytest自动化测试实例 324
12.4 本章小结 331
习题 12 331
第三部分 案例实践 334
第 13章 网上书店系统测试 335
13.1 网站测试概述 335
13.1.1 网站测试概念 335
13.1.2 网站测试过程 337
13.1.3 数据库测试 339
13.1.4 用户界面测试 341
13.1.5 构件级测试 341
13.1.6 配置测试 342
13.1.7 安全性测试 344
13.1.8 系统性能测试 345
13.2 案例概述 347
13.2.1 用户简介 347
13.2.2 项目的目的与目标 348
13.2.3 目标系统功能需求 348
13.2.4 目标系统性能需求 367
13.2.5 目标系统界面需求 367
13.2.6 目标系统的其他需求 368
13.2.7 目标系统的假设与约束条件 368
13.3 项目测试计划 368
13.3.1 测试项目 368
13.3.2 测试方案 368
13.3.3 测试资源 368
13.4 测试用例设计 369
13.4.1 单元测试用例 369
13.4.2 功能测试用例 375
13.4.3 性能测试用例 378
13.5 测试进度 379
13.5.1 单元测试 380
13.5.2 集成测试 380
13.5.3 系统测试 381
13.5.4 验收测试 382
13.6 评价 382
13.6.1 范围 382
13.6.2 数据整理 382
13.6.3 测试质量目标 382
13.7 测试分析报告 383
13.7.1 引言 383
13.7.2 测试计划实施 384
13.7.3 评价 385
13.8 本章小结 385
习题 13 385
第四部分 软件质量保证 387
第 14章 质量保证基础 387
14.1 质量保证概述 387
14.1.1 软件质量的定义 388
14.1.2 质量保证的定义 388
14.1.3 质量保证与软件测试的关系 389
14.1.4 质量保证的重要性 389
14.2 质量保证在软件开发周期中的角色 390
14.2.1 质量保证在不同开发生命周期中的作用 390
14.2.2 敏捷开发中的质量保证 391
14.3 本章小结 392
习题 14 393
第 15章 敏捷项目测试 395
15.1 敏捷项目简介 395
15.2 敏捷项目管理 397
15.2.1 敏捷项目需求的管理 397
15.2.2 敏捷项目的时间管理 397
15.2.3 敏捷项目的质量管理 398
15.3 敏捷测试 399
15.3.1 敏捷测试概述 399
15.3.2 探索式测试 401
15.3.3 基于Scrum的敏捷测试流程 403
15.4 本章小结 407
习题 15 407
第 16章 质量保证实践与流程 409
16.1 质量保证计划和策略 409
16.1.1 质量保证计划和策略的定义 409
16.1.2 质量保证计划和策略示例 410
16.2 质量度量和监控 412
16.2.1 使用度量来评估质量 412
16.2.2 监控和持续改进质量 412
16.2.3 质量度量和监控示例 413
16.3 软件评审 413
16.3.1 软件评审概述 414
16.3.2 不同类型的软件评审 414
16.3.3 软件评审示例 414
16.4 持续集成和持续交付(CI/CD) 415
16.4.1 CI/CD的概念和原则 415
16.4.2 实施CI/CD的好处 415
16.4.3 CI/CD管道阶段 416
16.4.4 CI/CD工具的选择 417
16.4.5 持续集成和持续交付示例 418
16.5 本章小结 419
习题 16 419
参考文献 422

读者评论

赶紧抢沙发哦!

我要评论

作者介绍

吕云翔,北京航空航天大学副教授,软件工程畅销书作者,主要研究项目及领域:软件工程、企业资源规划、计算机教育 以前出版的教材:计算机文化、计算机导论与实践、软件工程、计算机英语、SAP ERP教程等

相关图书

  • Python数据分析任务驱动教程

    黑马程序员 王宇翔 杨顺 张士兵 王佳丽

    本书以Anaconda为主要开发工具,采用任务驱动的编写方式,系统、全面地介绍Python在数据分析中的应用。...

    ¥59.80
  • 软件测试与质量保证

    李克文

    本书全面而详细地介绍了软件测试与质量保证,其突出特点是有机结合了软件测试与质量保证的方法、过程、工具、案例,适...

    ¥69.80
  • 软件工程——原理、方法与项目实践

    代红 张美娜 黄政

    本书带领读者了解软件的生命周期,包括需求分析、设计、实现、测试与维护等阶段;学习如何使用工程化的方法解决软件开...

    ¥59.80
  • Python爬虫项目教程 (第2版)(微课版)

    黄锐军

    本书基于Python语言介绍爬虫的基础知识。本书包括6个项目,分别为爬取外汇网站数据、爬取名言网站数据、爬取天...

    ¥59.80
  • PHP+MySQL项目化教程(微课版)

    刘海

    本书是一本基于项目导向和任务驱动的“教学做一体化”教材。本书以一个电子商务网站项目为载体,内容对接PHP软件开...

    ¥59.80
人邮微信
本地服务
人邮微信
教师服务
二维码
读者服务
读者服务
返回顶部
返回顶部