软件测试9787115238078
正版图书,可开发票,请放心购买。
¥
23.83
6.3折
¥
38
全新
仅1件
作者郑人杰,许静,于波
出版社人民邮电出版社
ISBN9787115238078
出版时间2010-09
装帧平装
开本16开
定价38元
货号6777469
上书时间2024-11-20
商品详情
- 品相描述:全新
- 商品描述
-
作者简介
郑人杰,清华大学教授。清华大学毕业后留校任计算数学专业、软件专业教师及清华大学软件中心副主任、清华同方公司副总工程师及顾问:现任中国软件行业协会理事、软件过程改进分会常务副会长。2009年“推动中国软件产业发展杰出人物”奖。多年来在软件工程、软件质量及测试、软件过程改进方面从事教学、研究和开发工作,编写《实用软件工程》、《计算机软件测试技术》、《基于软件能力成熟度模型的软件过程改进》等书。
许静,南开大学信息技术科学学院计算机与信息安全系教授、博士生导师,中国计算机学会软件工程专委会委员,天津市软件评测中心兼职副主任。曾从事军工软件的开发与测试多年。目前从事软件工程、软件测试的教学和科研工作。主讲本科生“软件工程”、硕士生“软件测试”课程。参与和主持重量、省部级科研项目多项,发表学术论文40余篇。
目录
第1章 绪论 1
1.1 软件危机和软件生存期 1
1.2 软件测试的意义 4
1.3 什么是软件测试 8
1.4 应该怎样认识软件测试 10
1.5 软件测试发展的历史回顾 19
1.5.1 历史回顾 19
1.5.2 与软件测试相关课题的发展 21
习题 22
第2章 软件测试策略 23
2.1 测试的生命周期 23
2.2 测试步骤 26
2.2.1 单元测试 27
2.2.2 集成测试 30
2.2.3 确认测试 32
2.2.4 系统测试 33
2.3 静态方法与动态方法 34
2.4 黑盒测试与白盒测试 36
2.4.1 黑盒测试 36
2.4.2 白盒测试 37
2.4.3 黑盒测试与白盒测试的比较 37
2.5 回归测试方法 39
2.6 人工测试与自动测试 40
2.6.1 人工测试技术概述 40
2.6.2 软件审查 41
2.6.3 软件审查的作用 42
2.6.4 自动测试 45
习题 48
第3章 黑盒测试 49
3.1 等价类划分 49
3.1.1 方法简介 49
3.1.2 应用等价类划分方法进行测试用例设计的实例 50
3.2 因果图 54
3.3 正交实验设计法 57
3.3.1 提取功能说明,构造因子——状态表 57
3.3.2 加权筛选,生成因素分析表 58
3.3.3 利用正交表构造测试数据集 59
3.3.4 方法评价 62
3.4 边值分析 63
3.4.1 单变量边界值的选取 63
3.4.2 多个变量组合情况下边界值的选取 64
3.5 判定表驱动测试 66
3.5.1 什么是判定表 66
3.5.2 判定表在功能测试中的应用 69
3.6 功能测试 70
3.6.1 功能测试的系统化 70
3.6.2 模块功能的分解测试 73
习题 76
第4章 白盒测试 77
4.1 程序结构分析 77
4.1.1 控制流分析 77
4.1.2 数据流分析 80
4.1.3 信息流分析 84
4.2 逻辑覆盖 85
4.2.1 几种常用的逻辑覆盖测试方法 85
4.2.2 最少测试用例数计算 90
4.2.3 测试覆盖准则 92
4.3 域测试 94
4.4 符号测试 98
4.5 路径分析 101
4.5.1 程序路径表达式 101
4.5.2 程序中路径数的计算 103
4.5.3 程序路径的树表示及路径编码 105
4.5.4 测试路径枚举 109
4.5.5 路径测试系统 110
4.6 程序插装 111
4.6.1 方法简介 111
4.6.2 断言语句 113
4.7 程序变异 115
4.7.1 程序强变异 116
4.7.2 程序弱变异 118
习题 120
第5章 集成测试 123
5.1 集成测试的必要性 123
5.2 程序结构分析 124
5.3 集成的方法 124
5.3.1 一次性集成 125
5.3.2 自顶向下集成 126
5.3.3 自底向上集成 129
5.3.4 协作集成 131
5.3.5 基干集成 133
5.3.6 层次集成 135
5.3.7 客户/服务器集成 136
5.3.8 分布服务集成 137
5.3.9 高频集成 139
5.3.10 基于调用图集成 141
习题 143
第6章 系统测试 145
6.1 非功能测试 146
6.1.1 安装测试 146
6.1.2 兼容性测试 147
6.1.3 安全性测试 149
6.1.4 恢复测试 151
6.2 性能测试 153
6.2.1 负载测试 154
6.2.2 压力测试 154
6.2.3 容量测试 155
6.3 其他测试 157
6.3.1 α测试 158
6.3.2 β测试 158
6.3.3 文档测试 158
6.3.4 界面测试 160
习题 161
第7章 测试组织和管理 163
7.1 测试准备 163
7.1.1 测试需求分析和计划 164
7.1.2 测试环境搭建 167
7.1.3 测试用例 170
7.2 测试实施 172
7.2.1 测试用例执行 173
7.2.2 测试数据记录 174
7.2.3 测试沟通 174
7.2.4 测试用例验证 174
7.3 测试总结 175
7.3.1 测试数据整理 175
7.3.2 测试用例修订 175
7.3.3 用例库的维护 175
7.3.4 配置管理 176
7.4 缺陷管理 177
7.4.1 缺陷描述 177
7.4.2 测试缺陷追踪 178
7.4.3 缺陷统计分析 180
7.4.4 寻找薄弱环节 181
7.5 测试成熟度模型 182
7.6 测试度量 184
习题 186
第8章 测试工具 187
8.1 测试工具综述 187
8.1.1 白盒测试工具 188
8.1.2 黑盒测试工具 189
8.1.3 测试管理工具 190
8.1.4 其他测试工具 192
8.2 JUnit(白盒测试工具) 193
8.2.1 JUnit简介 193
8.2.2 JUnit测试过程 194
8.2.3 JUnit断言设置 194
8.2.4 JUnit测试用例 195
8.3 LoadRunner(黑盒测试工具) 196
8.3.1 创建Vuser脚本 197
8.3.2 定义方案场景 197
8.3.3 运行方案场景 198
8.3.4 分析负载结果 199
8.4 TestDirector(测试管理工具) 199
8.4.1 测试需求定义 200
8.4.2 测试计划 201
8.4.3 测试执行 202
8.4.4 缺陷跟踪 202
8.5 WAST(专用测试工具) 203
8.5.1 准备测试脚本 203
8.5.2 设置测试脚本 204
8.5.3 运行测试脚本 205
8.5.4 应用侧重点 205
8.6 Introscope(测试辅助工具) 205
8.6.1 Introscope工作模式 206
8.6.2 Introscope测试策略 206
8.6.3 Introscope测试过程 208
8.6.4 Introscope监控指标 208
8.7 开源测试工具解决方案 209
习题 210
第9章 软件评审 211
9.1 软件评审方法 211
9.1.1 软件评审方法概述 211
9.1.2 软件项目评审应用举例 212
9.1.3 软件评审的定义 217
9.1.4 相关国际标准及能力成熟度模型中对软件评审的要求 218
9.2 软件评审的作用 222
9.2.1 软件评审的意义 222
9.2.2 代码评审的成功实例 226
9.2.3 评审与其他验证方法的比较 226
9.3 软件评审的实施 228
9.3.1 正式评审 228
9.3.2 需求评审 230
9.3.3 设计评审 234
9.3.4 代码评审 235
9.4 如何做好软件评审 236
9.4.1 软件评审中经常出现的问题 236
9.4.2 做好软件评审工作的建议 236
9.4.3 一个软件需求规格说明书的评审用检查单 236
习题 238
第10章 软件质量与软件质量管理 239
10.1 软件质量问题的挑战 239
10.1.1 软件质量问题引发的系统事故屡见不鲜 239
10.1.2 软件质量事故问题分析 240
10.1.3 解决软件质量问题的途径 241
10.2 软件错误类型分析 242
10.3 程序中隐藏错误数量估计 246
10.3.1 撒播模型 246
10.3.2 回归模型 248
10.4 软件质量特性 249
10.5 与软件质量管理相关的若干过程 251
10.5.1 软件质量保证过程 252
10.5.2 软件验证过程 253
10.5.3 软件确认过程 254
10.5.4 软件评审过程 255
10.5.5 软件审核过程 256
10.5.6 软件问题解决过程 257
10.6 软件质量因素和质量特性 258
10.7 软件质量保证的任务 261
10.8 程序排错 262
10.8.1 排错工作概述 262
10.8.2 排错方法 263
10.8.3 排错策略 264
习题 266
第11章 测试可靠性与软件可靠性 267
11.1 测试可靠性理论 267
11.1.1 测试可靠性的奠基性理论 267
11.1.2 路径测试可靠性理论 268
11.1.3 暴露子域理论 270
11.1.4 测试的数学符号系统 272
11.2 软件可靠性概念 274
11.3 软件可靠性模型 279
11.4 软件可靠性在软件测试中的应用 286
11.5 近几年的发展状况 292
习题 293
第12章 程序正确性证明 294
12.1 程序正确性证明概述 294
12.2 以公理语义学为基础的正确性证明技术 296
12.2.1 程序规范 296
12.2.2 程序及其运行状态 297
12.2.3 程序正确性与部分正确性 297
12.2.4 公理正确性证明 298
12.2.5 FLOY D的归纳断言法 299
12.2.6 HOARE的公理方法 305
12.2.7 E. W. Dijkstra的最弱前置条件法 307
12.2.8 程序正确性证明技术存在的问题 310
12.3 程序综合 311
12.3.1 面向目标的程序推导 311
12.3.2 不变式推导技术 313
12.4 进一步研究的方向 314
习题 315
参考文献 316
内容摘要
7.1.1 测试需求分析和计划
1.什么是测试需求
软件测试需求是根据程序文件和质量目标对软件测试活动所提的要求,也就是在项目中要测试哪些内容和测试到什么程度。在测试活动中,首先需要明确测试需求,才能决定需要多少人、怎么测、测试多长时间、测试的环境、需要的技能、工具、相应的背景知识以及可能遇到的风险等,以上所有的内容结合起来就构成了测试计划的基本要素。
测试需求是测试计划的基础与重点。像软件的需求一样,根据不同的公司环境、不同的专业水平、不同的要求和详细程度,测试需求也是不同的。但是,对于一个全新的项目或产品,测试需求力求详细明确,以避免测试遗漏与误解。
测试需求是测试人员根据用户需求说明书和开发设计说明书编写的,测试需求分析要检查用户需求的正确性,保证需求的描述能够得出一个实际结果;还要根据用户需求和设计需求分析软件各个模块所要实现的功能点、潜在的业务约束以及一些常识性的软件设计规格。
测试需求可从系统的需求报告或软件规格说明书中获得,针对测试过程而言,可以理解为测试目标。测试需求越详细,功能点就越清晰,这样就可以更好地编写测试计划和用例。因为在测试过程中要验证是否实现需求提出的功能,测试需求与测试用例具有对应关系,例如一个管理系统,其中有一个测试需求是用户正常登录,对应设计的测试用例就应根据此需求进行设计。
2.为什么要做测试需求分析
要成功地完成一个测试项目,必须了解测试的规模、复杂程度以及可能存在的风险,这些都需要通过详细的测试需求来了解。测试需求详细、精准,表明对所测软件了解得深入,对所要进行的任务内容有清晰的认识,因而保证测试的质量与进度就更有把握。
如果把测试活动类比于整个软件生命周期,我们把“软件”两个字全部替换成“测试”,则测试需求就相当于软件的需求规格,测试策略相当于软件的设计架构,测试用例相当于软件的详细设计,测试执行相当于软件的编码过程。这样,我们就可以明白整个测试活动的依据来源于测试需求。
……
主编推荐
《软件测试》从测试技术:测试管理、测试工具3个方面总结已有的成果,力求全面、系统地介绍软件测试方面的内容。
《软件测试》特点:·系统性:结合软件工程的方法,以软件开发的过程为基础,系统介绍每一阶段的测试方法,并插入实例具体分析。
·实用性:注重理论与实践的结合,通过提供的测试案例和测试工具介绍,使学生了解工程化的测试过程,并学会测试文档的编写和测试工具的使用。
·优选性:全面介绍本学科的发展,系统总结理论方法,完整讲解软件测试与软件开发的依托发展关系,特别融入各个专项测试技术,全面介绍测试工具的使用,使《软件测试》具有优选性。
系统讲解理论方法,突出实践练习分析,专项技术优选实用。
精彩内容
《软件测试》作者由清华大学、南开大学计算机系、清华同方公司软件研究院的人员组成。作者总结了多年在软件工程、软件测试教学经验的基础上,系统回顾了测试发展与概念的定义,深入讲解了测试方法与测试过程,全面介绍了测试管理与主流测试工具。
《软件测试》可以作为计算机、软件工程、软件测试及相关专业的本科、硕士研究生教材,也可以作为测试工程师培训用书。
随着软件测试技术从简单的查错、排错,发展到贯穿软件开发的各个阶段,不错的测试方法和测试管理越来越重要,《软件测试》旨在全面系统地介绍软件测试技术。
媒体评论
郑人杰、许静、于波编著的《软件测试》既有理论方法介绍,又包括实例讲解、工具介绍等。测试基础:介绍软件测试的起源、发展状况以及基本概念、基本原则、基本术语。测试技术与测试过程:详细介绍功能性测试和结构性测试技术中的测试数据选择方法;从单元测试、集成测试、系统测试3个层次介绍测试的过程,详细给出各种集成测试的方法和系统测试的类型,如压力/负载测试、安全性测试、性能测试、兼容性测试、界面性测试等。测试管理:介绍如何搭建测试环境、如何实施测试以及如何进行测试总结。测试工具:介绍各种类型的测试工具,包括黑盒测试工具、白盒测试工具、测试管理工具等。
本书从测试技术、测试管理、测试工具3个方面总结已有的成果,力求全面、系统地介绍软件测试方面的内容。
— 没有更多了 —
以下为对购买帮助不大的评价