本站支持尊重有效期内的版权/著作权,所有的资源均来自于互联网网友分享或网盘资源,一旦发现资源涉及侵权,将立即删除。希望所有用户一同监督并反馈问题,如有侵权请联系站长或发送邮件到ebook666@outlook.com,本站将立马改正
商品基本信息,请以下列介绍为准 | |
商品名称: | 软件测试(慕课版 第2版) |
作者: | 郑炜,李宁,陈 等 |
定价: | 69.8 |
出版社: | 人民邮电出版社 |
出版日期: | 2022-02-01 |
ISBN: | 9787115564252 |
印次: | 1 |
版次: | 第2版 |
装帧: | |
开本: | 16开 |
内容简介 | |
本书系统介绍了软件测试的基本理论、工具的使用,以及前沿的软件测试理论和技术。 全书共分为11章,内括:软件测试的基础、软件测试的策略、黑盒测试与白盒测试、软件测试过程管理、软件测试的度量方法、系统测试技术、软件测试工具及其应用、第三方测试、公有云测试质量评估与退出方法、企业测试实践、CMMI与软件测试、基于搜索的软件测试。本书所有知识都以结合具体实例的形行介绍,力求详略得当,使读者可以快速地理解软件测试的方法。章后附有习题,供读者实践练习。同时各章节主要内容配备了以二维码为载体的微课,并在学堂在线(http://www.xuetangx.com台上提供了在线慕课。 |
目录 | |
第 1章 软件测试基础2 1.1 软件测试的基本概念 2 1.1.1 软件测试是什么 2 1.1.2 软件测试的目的 3 1.1.3 软件测试与软件质量保证 3 1.1.4 软件测试的必要性 5 1.1.5 软件测试的基本概念分析 6 1.2 软件测试的分类 7 1.3 软件缺陷管理 10 1.3.1 软件缺陷的概念 10 1.3.2 软件缺陷的属性 10 1.3.3 软件缺陷生命周期 12 1.3.4 常见的软件缺陷管理工具 13 1.4 软件质量与软件测试相关特性 14 1.4.1 软件质量模型 14 1.4.2 测试的复杂性和经济性 16 1.5 软件测试充分性和测试停止 准则 19 1.5.1 软件的测试充分性问题 19 1.5.2 软件测试原则 20 1.5.3 测试停止准则 23 1.6 小结 25 1.7 习题 26 第 2章 软件测试策略 27 2.1 软件开发过程及模型 27 2.1.1 软件开发过程 27 2.1.2 软件开发模型 27 2.2 软件测试过程 30 2.2.1 测试计划和控制 31 2.2.2 测试分析和设计 32 2.2.3 测试实现和执行 33 2.2.4 测试出口准则的评估和 报告 33 2.2.5 测试活动结束 34 2.3 软件测试与软件开发的关系 35 2.3.1 软件测试在软件开发中的 作用 35 2.3.2 软件测试与软件开发各 阶段的关系 35 2.3.3 常见软件测试模型 36 2.4 黑盒测试和白盒测试 39 2.4.1 黑盒测试 40 2.4.2 白盒测试 41 2.4.3 黑盒测试与白盒测试的比较 42 2.5 小结 43 2.6 习题 43 第3章 黑盒测试方法 44 3.1 测例综述 44 3.1.1 测例设计原则 44 3.1.2 测例设计步骤 46 3.1.3 测例的构成 47 3.2 等价类设计方法 48 3.2.1 等价类划分 49 3.2.2 等价类划分方法 50 3.2.3 等价类划分的测 52 3.3 边界值设计方法 57 3.3.1 边界值分析法原理 57 3.3.2 边界值分析原则 58 3.3.3 健壮性分析 60 3.3.4 边界值分析法的测试 运用 60 3.4 因果图和决策表设计方法 62 3.4.1 因果图原理 62 3.4.2 因果图法应用 63 3.4.3 决策表法及其应用 64 3.5 正交试验设计方法 67 3.5.1 正交试验设计法原理 67 3.5.2 利用正交试验法设计测试 用例 69 3.6 组合测试方法 70 3.6.1 基本概念 70 3.6.2 构造方法 72 3.6.3 组合测试工具使用 73 3.7 小结 75 3.7 习题 75 第4章 白盒测试方法 77 4.1 程序控制流图 77 4.1.1 基本块 77 4.1.2 流图的定义与图形表示 78 4.2 逻辑覆盖测试 79 4.2.1 测试覆盖率 79 4.2.2 逻辑覆盖 79 4.2.3 逻辑覆盖准则之间含 关系 81 4.2.4 测试覆盖准则 81 4.3 路径分析与测试 82 4.4 数据流测试分析 84 4.4.1 测试充分性基础 84 4.4.2 测试充分性准则的度量 84 4.4.3 测试集充分性的度量 86 4.4.4 数据流概念 86 4.4.5 基于数据流的测试充分性 准则 89 4.5 变异测试 90 4.5.1 变异和变体 90 4.5.2 强变异和弱变异 91 4.5.3 用变异技行测试 评价 92 4.5.4 变异算子 94 4.5.5 变异算子的设计 95 4.5.6 变异测试的基本原则 95 4.6 小结 96 4.7 习题 96 第5章 软件测试的过程管理 98 5.1 软件测试的各个阶段 98 5.2 测试需求 99 5.2.1 测试需求的分类 99 5.2.2 测试需求的收集 100 5.2.3 测试需求的分析 101 5.2.4 测试需求的评审 101 5.3 测试计划 102 5.3.1 测试计划的目标 102 5.3.2 制订测试计划 103 5.3.3 划分测例优先级 103 5.4 测试设计及测例 104 5.4.1 测例的设计原则 104 5.4.2 测例的设计方法 105 5.4.3 测例的粒度 107 5.4.4 测例的评审 108 5.5 测试的执行 108 5.5.1 测例的选择 108 5.5.2 测试人员分工 109 5.5.3 测试环境的搭建 109 5.5.4 BVT测试与冒烟测试 110 5.5.5 每日构建介绍 110 5.6 软件缺陷分析 111 5.6.1 软件缺陷分析的作用 112 5.6.2 软件缺陷的分类 112 5.6.3 软件缺陷分析方法 112 5.6.4 软件缺陷分析的流程 114 5.6.5 软件缺陷报告 115 5.7 小结 116 5.8 习题 116 第6章 软件测试的度量 117 6.1 软件测试度量简介 117 6.1.1 软件测试度量的目的 117 6.1.2 软件测试度量的难度 119 6.1.3 软件测试人员工作质量的 衡量 120 6.2 软件测试的度量及其应用 125 6.2.1 度量软件缺陷的数量 125 6.2.2 软件测试的度量及其 应用 126 6.2.3 软件缺陷的定性评估 128 6.2.4 软件缺陷综合评价模型 129 6.2.5 测试覆盖率统计 130 6.3 软件测试常见的度量类型 133 6.3.1 手工测试度量 134 6.3.2 性能测试度量 139 6.3.3 自动化测试度量 141 6.3.4 通用度量 142 6.4 小结 143 6.5 习题 144 第 2部分 实际应用 第7章 系统测试技术 146 7.1 软件自动化测试 146 7.1.1 自动化测试的概念 146 7.1.2 自动化测试的优缺点 148 7.1.3 自动化测试工具 149 7.2 兼容性测试 151 7.2.1 兼容性测试的概念 151 7.2.2 兼容性测试的内容 152 7.2.3 兼容性测试的标准和 规范 155 7.2.4 兼容性测试工具 156 7.3 Web测试实践 156 7.3.1 Web应用体系结构 156 7.3.2 Web测试概述 157 7.3.3 Web测试主要类型 157 7.4 移动终端软件测试实践 162 7.4.1 移动终端软件测试背景 162 7.4.2 移动终端软件测试要求 163 7.4.3 移动终端软件测试实例 163 7.5 小结 175 7.6 习题 176 第8章 软件测试工具及其应用 177 8.1 性能测试工具LoadRunner 177 8.1.1 性能测试简介 177 8.1.2 LoadRunner的主要 8.1.3 性能测试的主要术语 181 8.1.4 LoadRunner的安装 182 8.1.5 LoadRunner的脚本 录制 184 8.2 单元测试工具JUnit 188 8.2.1 JUnit简介 188 8.2.2 安装与使用 189 8.2.3 JUnit使用原则 193 8.2.4 其他特性 195 8.能测试工具C++test 197 8.3.1 C++test的安装 199 8.3.2 C++test静态测试 201 8.3.3 RuleWizard 203 8.3.4 C++test动态测试 210 8.4 开源软件缺陷管理工具 Bugzilla 217 8.4.1 Bugzilla简介 217 8.4.2 Bugzilla安装说明 218 8.4.3 Bugzilla使用说明 221 8.5 测例自动生成工具 EvoSuite 224 8.5.1 EvoSuite简介 224 8.5.2 EvoSuite安装说明 224 8.5.3 EvoSuite使用说明 228 8.6 变异测试工具Pitest 232 8.6.1 Pitest简介 232 8.6.2 Pitest安装说明 232 8.6.3 Pitest使用说明 234 8.7 小结 237 8.8 习题 237 第9章 第三方测试 238 9.1 第三方测试的基本概念与测试 过程 238 9.1.1 第三方测现状 238 9.1.2 第三方测试的意义和 模式 239 9.1.3 第三方测试的相关概念 240 9.1.4 第三方测试的测试过程 240 9.2 测试实例实践 242 9.3 小结 245 9.4 习题 245 第 10章 数据库测试 246 10.1 数据库应用软件测试 246 10.1.1 数据库设计验证 246 10.1.能测试 247 10.1.3 性能测试 248 10.1.5 性测试 253 10.2 数据库管理系统基础测试 254 10.2.1 数据库管理系统简介 254 10.2.2 DBMS的S能 测试 254 10.2.3 DBMS的事务特性 测试 256 10.3 数据库管理系统性能测试 257 10.3.1 DBMS性能测试的目的 与性能指标 257 10.3.2 DBMS的基准性能 测试 257 10.3.3 DBMS的性能测试 工具 258 10.4 数据库管理系统高可用性 测试 261 10.5 小结 261 10.6 习题 262 第3部分 前沿技术 第 11章 智能软件测试技术 264 11.1 基于机器学软件缺陷报告 分析 264 11.1.1 基于机器学软件缺陷 报告分析的目的和意义 264 11.1.2 缺陷检测数据集的 构造 266 11.1.3 基于深度学缺陷 报告检测 272 11.2 基于软件度量的软件缺陷预测 方法 277 11.2.1 基于软件度量的软件缺陷 预测的目的和意义 277 11.2.2 软件缺陷预测模型的 构建 278 11.2.3 软件缺陷预测模型性能 评估指标 285 11.2.4 软件缺陷预测常用评测 数据集 287 11.3 基于搜索的软件测试方法 288 11.3.1 智能搜索算法 288 11.3.2 搜索技术在软件测试中的 应用 300 11.4 小结 314 11.5 习题 314 第 12章 公有云测试质量评估 315 12.1 云测试概念 316 12.1.1 云计算 316 12.1.2 云测试 317 12.2 云可靠性度量 318 12.2.1 软件可靠性 318 12.2.2 软件故障分析和诊断 327 12.3 测试及度量 328 12.3.1 性测试方法 329 12.3.2 测试方法举例 332 12.4 小结 335 12.5 习题 335 第 13章 软件测试的拓展与提高 336 13.1 企业测试实践 336 13.1.1 测试计划 336 13.1.2 测试管理 338 13.1.3 企业的测试策略 341 13.1.4 测试人员组织 341 13.1.5 测试小组的职责 342 13.2 CMMI和软件测试 343 13.2.1 CMMI简介 343 第 1章 软件测试基础 2 1.1 软件测试的基本概念 2 1.1.1 软件测试是什么 2 1.1.2 软件测试的目的 3 1.1.3 软件测试与软件质量保证 3 1.1.4 软件测试的必要性 5 1.1.5 软件测试的基本概念分析 6 1.2 软件测试的分类 7 1.3 软件缺陷管理 10 1.3.1 软件缺陷的概念 10 1.3.2 软件缺陷的属性 10 1.3.3 软件缺陷生命周期 12 1.3.4 常见的软件缺陷管理工具 13 1.4 软件质量与软件测试相关特性 14 1.4.1 软件质量模型 14 1.4.2 测试的复杂性和经济性 16 1.5 软件测试充分性和测试停止 准则 19 1.5.1 软件的测试充分性问题 19 1.5.2 软件测试原则 20 1.5.3 测试停止准则 23 1.6 小结 25 1.7 习题 26 第 2章 软件测试策略 27 2.1 软件开发过程及模型 27 2.1.1 软件开发过程 27 2.1.2 软件开发模型 27 2.2 软件测试过程 30 2.2.1 测试计划和控制 31 2.2.2 测试分析和设计 32 2.2.3 测试实现和执行 33 2.2.4 测试出口准则的评估和 报告 33 2.2.5 测试活动结束 34 2.3 软件测试与软件开发的关系 35 2.3.1 软件测试在软件开发中的 作用 35 2.3.2 软件测试与软件开发各 阶段的关系 35 2.3.3 常见软件测试模型 36 2.4 黑盒测试和白盒测试 39 2.4.1 黑盒测试 40 2.4.2 白盒测试 41 2.4.3 黑盒测试与白盒测试的比较 42 2.5 小结 43 2.6 习题 43 第3章 黑盒测试方法 44 3.1 测例综述 44 3.1.1 测例设计原则 44 3.1.2 测例设计步骤 46 3.1.3 测例的构成 47 3.2 等价类设计方法 48 3.2.1 等价类划分 49 3.2.2 等价类划分方法 50 3.2.3 等价类划分的测 52 3.3 边界值设计方法 57 3.3.1 边界值分析法原理 57 3.3.2 边界值分析原则 58 3.3.3 健壮性分析 60 3.3.4 边界值分析法的测试 运用 60 3.4 因果图和决策表设计方法 62 3.4.1 因果图原理 62 3.4.2 因果图法应用 63 3.4.3 决策表法及其应用 64 3.5 正交试验设计方法 67 3.5.1 正交试验设计法原理 67 3.5.2 利用正交试验法设计测试 用例 69 3.6 组合测试方法 70 3.6.1 基本概念 70 3.6.2 构造方法 72 3.6.3 组合测试工具使用 73 3.7 小结 75 3.7 习题 75 第4章 白盒测试方法 77 4.1 程序控制流图 77 4.1.1 基本块 77 4.1.2 流图的定义与图形表示 78 4.2 逻辑覆盖测试 79 4.2.1 测试覆盖率 79 4.2.2 逻辑覆盖 79 4.2.3 逻辑覆盖准则之间含 关系 81 4.2.4 测试覆盖准则 81 4.3 路径分析与测试 82 4.4 数据流测试分析 84 4.4.1 测试充分性基础 84 4.4.2 测试充分性准则的度量 84 4.4.3 测试集充分性的度量 86 4.4.4 数据流概念 86 4.4.5 基于数据流的测试充分性 准则 89 4.5 变异测试 90 4.5.1 变异和变体 90 4.5.2 强变异和弱变异 91 4.5.3 用变异技行测试 评价 92 4.5.4 变异算子 94 4.5.5 变异算子的设计 95 4.5.6 变异测试的基本原则 95 4.6 小结 96 4.7 习题 96 第5章 软件测试的过程管理 98 5.1 软件测试的各个阶段 98 5.2 测试需求 99 5.2.1 测试需求的分类 99 5.2.2 测试需求的收集 100 5.2.3 测试需求的分析 101 5.2.4 测试需求的评审 101 5.3 测试计划 102 5.3.1 测试计划的目标 102 5.3.2 制订测试计划 103 5.3.3 划分测例优先级 103 5.4 测试设计及测例 104 5.4.1 测例的设计原则 104 5.4.2 测例的设计方法 105 5.4.3 测例的粒度 107 5.4.4 测例的评审 108 5.5 测试的执行 108 5.5.1 测例的选择 108 5.5.2 测试人员分工 109 5.5.3 测试环境的搭建 109 5.5.4 BVT测试与冒烟测试 110 5.5.5 每日构建介绍 110 5.6 软件缺陷分析 111 5.6.1 软件缺陷分析的作用 112 5.6.2 软件缺陷的分类 112 5.6.3 软件缺陷分析方法 112 5.6.4 软件缺陷分析的流程 114 5.6.5 软件缺陷报告 115 5.7 小结 116 5.8 习题 116 第6章 软件测试的度量 117 6.1 软件测试度量简介 117 6.1.1 软件测试度量的目的 117 6.1.2 软件测试度量的难度 119 6.1.3 软件测试人员工作质量的 衡量 120 6.2 软件测试的度量及其应用 125 6.2.1 度量软件缺陷的数量 125 6.2.2 软件测试的度量及其 应用 126 6.2.3 软件缺陷的定性评估 128 6.2.4 软件缺陷综合评价模型 129 6.2.5 测试覆盖率统计 130 6.3 软件测试常见的度量类型 133 6.3.1 手工测试度量 134 6.3.2 性能测试度量 139 6.3.3 自动化测试度量 141 6.3.4 通用度量 142 6.4 小结 143 6.5 习题 144 第 2部分 实际应用 第7章 系统测试技术 146 7.1 软件自动化测试 146 7.1.1 自动化测试的概念 146 7.1.2 自动化测试的优缺点 148 7.1.3 自动化测试工具 149 7.2 兼容性测试 151 7.2.1 兼容性测试的概念 151 7.2.2 兼容性测试的内容 152 7.2.3 兼容性测试的标准和 规范 155 7.2.4 兼容性测试工具 156 7.3 Web测试实践 156 7.3.1 Web应用体系结构 156 7.3.2 Web测试概述 157 7.3.3 Web测试主要类型 157 7.4 移动终端软件测试实践 162 7.4.1 移动终端软件测试背景 162 7.4.2 移动终端软件测试要求 163 7.4.3 移动终端软件测试实例 163 7.5 小结 175 7.6 习题 176 第8章 软件测试工具及其应用 177 8.1 性能测试工具LoadRunner 177 8.1.1 性能测试简介 177 8.1.2 LoadRunner的主要 8.1.3 性能测试的主要术语 181 8.1.4 LoadRunner的安装 182 8.1.5 LoadRunner的脚本 录制 184 8.2 单元测试工具JUnit 188 8.2.1 JUnit简介 188 8.2.2 安装与使用 189 8.2.3 JUnit使用原则 193 8.2.4 其他特性 195 8.能测试工具C++test 197 8.3.1 C++test的安装 199 8.3.2 C++test静态测试 201 8.3.3 RuleWizard 203 8.3.4 C++test动态测试 210 8.4 开源软件缺陷管理工具 Bugzilla 217 8.4.1 Bugzilla简介 217 8.4.2 Bugzilla安装说明 218 8.4.3 Bugzilla使用说明 221 8.5 测例自动生成工具 EvoSuite 224 8.5.1 EvoSuite简介 224 8.5.2 EvoSuite安装说明 224 8.5.3 EvoSuite使用说明 228 8.6 变异测试工具Pitest 232 8.6.1 Pitest简介 232 8.6.2 Pitest安装说明 232 8.6.3 Pitest使用说明 234 8.7 小结 237 8.8 习题 237 第9章 第三方测试 238 9.1 第三方测试的基本概念与测试 过程 238 9.1.1 第三方测现状 238 9.1.2 第三方测试的意义和 模式 239 9.1.3 第三方测试的相关概念 240 9.1.4 第三方测试的测试过程 240 9.2 测试实例实践 242 9.3 小结 245 9.4 习题 245 第 10章 数据库测试 246 10.1 数据库应用软件测试 246 10.1.1 数据库设计验证 246 10.1.能测试 247 10.1.3 性能测试 248 10.1.5 性测试 253 10.2 数据库管理系统基础测试 254 10.2.1 数据库管理系统简介 254 10.2.2 DBMS的S能 测试 254 10.2.3 DBMS的事务特性 测试 256 10.3 数据库管理系统性能测试 257 10.3.1 DBMS性能测试的目的 与性能指标 257 10.3.2 DBMS的基准性能 测试 257 10.3.3 DBMS的性能测试 工具 258 10.4 数据库管理系统高可用性 测试 261 10.5 小结 261 10.6 习题 262 第3部分 前沿技术 第 11章 智能软件测试技术 264 11.1 基于机器学软件缺陷报告 分析 264 11.1.1 基于机器学软件缺陷 报告分析的目的和意义 264 11.1.2 缺陷检测数据集的 构造 266 11.1.3 基于深度学缺陷 报告检测 272 11.2 基于软件度量的软件缺陷预测 方法 277 11.2.1 基于软件度量的软件缺陷 预测的目的和意义 277 11.2.2 软件缺陷预测模型的 构建 278 11.2.3 软件缺陷预测模型性能 评估指标 285 11.2.4 软件缺陷预测常用评测 数据集 287 11.3 基于搜索的软件测试方法 288 11.3.1 智能搜索算法 288 11.3.2 搜索技术在软件测试中的 应用 300 11.4 小结 314 11.5 习题 314 第 12章 公有云测试质量评估 315 12.1 云测试概念 316 12.1.1 云计算 316 12.1.2 云测试 317 12.2 云可靠性度量 318 12.2.1 软件可靠性 318 12.2.2 软件故障分析和诊断 327 12.3 测试及度量 328 12.3.1 性测试方法 329 12.3.2 测试方法举例 332 12.4 小结 335 12.5 习题 335 第 13章 软件测试的拓展与提高 336 13.1 企业测试实践 336 13.1.1 测试计划 336 13.1.2 测试管理 338 13.1.3 企业的测试策略 341 13.1.4 测试人员组织 341 13.1.5 测试小组的职责 342 13.2 CMMI和软件测试 343 13.2.1 CMMI简介 343 |
适读人群 :计算机、软件相关专业学生,适合和培训。 |
媒体评论 | |
1. 本书被评为十四五规划教材,陕西省2019金课(精品在线课程)。 2. 体现新工科,年来软件测试的新技术、新理论融入到书中,书含软件度量、数据库测试和智能软件测试等新技术内容。 3. 新形态教材,基于互联网媒介建设慕课教学内容。各章节均配备了以二维码为载体的微课,并在学堂在台提供了在线慕课。慕课中的与教材的互相配合,可有效提高学生在线学习效率。慕课课程在2016年获得首批慕课立项,2017年在慕台“学堂在线”上线,随后2018年在“中国大学慕课”上线,目前已选课人数1万多人,成为学堂在线的人气课程。 4. 作者团队多年从事软件测试教学与科研,2018年“校企全过程深度融合的软件工程教学体系构建与实践”获国家教学成果,多次获得西北工业大学教学成果奖和。 |
作者简介 | |
郑炜,西北工业大学教师。 教育经历 *.2000/9–2007/7,西北工业大学,计算机软件与理论,博士,导师:胡正* 2.*997/9–2000/3,西北工业大学,计算机软件与理论,硕士,导师:李战怀 科研与学术工作经历 *.2009/*2-*今,西北工业大学,软件与微电子学院,副教授 2.2007/*2-2009/*2,西北工业大学,博士后,合作导师:张科 3. 20*3/*0-20*4/*0,英*布鲁内尔大学,访问* 个人简介 发表学术论文60余篇,其中在FSE20*6,TOSEM,Information Science等SCI期刊文若干篇。受邀于20*6年第七届软件工程*域研讨会*秀论文报告、第三届**软件工程青年沙龙*邀嘉宾做*秀论文报告、SATE20*6和NASAC20*6会议论文报告、以及20*6年***校计算机教育大会主题报告,并获得*秀论文;在美*举办的软件质量*际会议SERE20*3上担任分;主持和参与*家863,973项目各*项,*家自然项目两项,十*五及十二五**预研课题,航空和航天各*项;与*内多个行第三方软件和软件工具研发等项目合作,并在上述作为*邀*行软件质量相关报告数十次,作为项目评委,参加项目验收和评审数十次;随*家外*局访问团赴美访问福、加州伯克利、卡耐基梅隆等*校,以及HP,Oracle,Google等企业;主讲的软件课程获得*家级慕课--在线学堂立项;第*作者申请*家发明*利五项,第*作者编写*教材五本。 |