新書推薦:
《
血色帝国:近代英国社会与美洲移民
》
售價:NT$
265.0
《
海外中国研究·王羲之:六朝贵族的世界(艺术系列)
》
售價:NT$
811.0
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
“御容”与真相:近代中国视觉文化转型(1840-1920)
》
售價:NT$
505.0
《
鸣沙丛书·大风起兮:地方视野和政治变迁中的“五四”(1911~1927)
》
售價:NT$
454.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
英雄之旅:把人生活成一个好故事
》
售價:NT$
398.0
|
編輯推薦: |
随书提供教学所需课件、教学视频、教学大纲、教授计划及测试案例源代码等。
|
內容簡介: |
本书是基于校级精品资源共享课程项目编写的教材,是作者从事十余年软件测试课程教学的经验积累。本书以服务高校软件测试课程教学为目的,尽量在知识的系统性和学习的连贯性上作出平衡,以案例为中心,遵循够用为度的课堂原则,采用提出问题分析问题解决问题的思路,很多时候采用了手把手教学的方式,目的是帮助初学者入门,提高学习者学习兴趣,终具备软件测试工程师所需的职业技能。全书共分9章,主要介绍软件测试的理论知识、方法、技术和常用工具,包括:软件测试概论、软件测试基本概念、软件测试与软件质量、黑盒子测试、软件测试资源管理、白盒子测试、性能测试、软件测试相关文档编写,后一章是配套的课程综合实训。本书适合于高职高专院校的软件技术、软件测试专业及计算机相关专业使用,也可作为软件测试课程的教材,还可作为学习软件测试入门和提高的培训教材,也适合从事软件开发和软件测试的专业技术及管理人员参阅使用。
|
目錄:
|
第1章 软件测试概论 1
1.1 软件的概念 1
1.2 软件分类简述 1
1.3 软件测试的历史 3
1.4 软件缺陷与故障案例 5
1.5 导致软件缺陷的原因 7
1.6 软件缺陷到底是什么 8
小结 9
思考与练习 10
第2章 软件测试基本概念 11
2.1 什么是软件测试 11
2.2 软件测试的目的 12
2.3 什么是测试用例 13
2.4 软件测试多维度分类 14
2.4.1 按是否需要执行被测软件的角度划分 14
2.4.2 按测试过程的各个阶段划分 14
2.4.3 按使用的测试方法划分 15
2.4.4 按测试实施组织划分 16
小结 18
思考与练习 18
第3章 软件测试与软件质量 20
3.1 软件质量模型 20
3.2 QA与QC 22
3.3 狭义上的软件测试过程 23
3.4 软件测试过程模型介绍 24
3.4.1 V模型 24
3.4.2 W模型 25
3.4.3 H模型 26
3.4.4 测试过程模型的选择 26
3.5 软件测试总体工作流程 27
3.5.1 需求测试阶段 28
3.5.2 编写测试计划阶段 28
3.5.3 设计测试用例阶段 29
3.5.4 实施测试阶段 29
3.5.5 测试总结报告阶段 29
3.5.6 测试归档阶段 30
3.6 软件测试基本原则 30
3.6.1 完全测试软件是不可能的 30
3.6.2 软件测试是有风险的行为 31
3.6.3 测试无法显示潜在的软件缺陷 32
3.6.4 软件缺陷的群集现象 32
3.6.5 软件缺陷的免疫现象 33
3.6.6 随着时间的推移,软件缺陷的修复费用将呈
几何级数增长 33
3.6.7 零缺陷是不切实际的行为 34
3.6.8 尽量避免测试的随意性 34
小结 34
思考与练习 35
第4章 黑盒子测试 37
4.1 黑盒子测试方法概述 37
4.2 典型案例分析 38
4.3 等价类划分法 39
4.3.1 划分等价类 39
4.3.2 等价类划分原则 39
4.3.3 设计测试用例 40
4.3.4 针对三角形问题使用等价类划分方法设计测试用例 41
4.3.5 针对雇佣金问题使用等价类划分方法设计测试用例 44
4.4 边界值分析 45
4.4.1 使用边界值分析方法进行健壮性测试 46
4.4.2 边界值分析简介 47
4.4.3 基于边界值分析方法
设计测试用例的原则 48
4.4.4 针对三角形问题使用边界值分析方法设计测试用例 49
4.4.5 针对雇佣金问题使用边界值分析方法设计测试用例 50
4.5 决策表分析 52
4.5.1 决策表的组成部分 52
4.5.2 建立决策表设计测试用例 53
4.5.3 以经典的阅读指南为例构建决策表 53
4.5.4 决策表的简化 53
4.5.5 针对三角形问题使用决策表分析方法设计测试用例 54
小结 55
思考与练习 56
第5章 软件测试资源管理 58
5.1 ALMQCTD:经典的软件测试管理工具 59
5.2 ALM入门 60
5.3 ALM用户使用指南 61
5.3.1 连接ALM服务器 61
5.3.2 登录项目 61
5.3.3 ALM桌面客户端工作界面 63
5.4 案例引入 64
5.5 在ALM管理端上创建项目 65
5.6 在ALM用户端登录项目 69
5.7 使用ALM创建需求 71
5.8 使用ALM创建测试(测试用例) 77
5.9 使用ALM创建测试集 92
5.10 使用ALM进行缺陷管理 98
小结 106
思考与练习 107
第6章 白盒子测试 108
6.1 程序控制流图 109
6.2 数据流分析 110
6.3 逻辑覆盖 111
6.3.1 语句覆盖 112
6.3.2 判定覆盖 112
6.3.3 条件覆盖 113
6.3.4 判定?条件覆盖 114
6.3.5 条件组合覆盖 114
6.3.6 路径覆盖 115
6.4 路径分析 117
6.4.1 基本路径测试 117
6.4.2 循环测试 119
小结 121
思考与练习 122
第7章 性能测试 124
7.1 性能测试概述 124
7.2 实施性能测试的过程 125
7.3 性能分析名词解释 126
7.4 LoadRunner简介 127
7.4.1 批量创建虚拟用户
模拟真实负载 127
7.4.2 性能测试自动化 128
7.4.3 性能监控 128
7.4.4 直观的结果分析 129
7.5 使用LoadRunner进行负载测试的流程 129
7.5.1 案例介绍航空订票网站 129
7.5.2 规划负载测试 133
7.5.3 创建Vuser脚本 133
7.5.4 增强功能:添加事务 145
7.5.5 增强功能:参数化输入 149
7.5.6 增强功能:内容检查 155
7.5.7 准备加载:迭代和并发用户 158
7.5.8 定义场景 162
7.5.9 运行场景 164
7.5.10 分析结果 167
小结 171
思考与练习 172
第8章 软件测试相关文档编写 173
8.1 测试计划 173
8.2 评审报告 188
8.3 测试报告 191
小结 198
思考与练习 198
第9章 课程综合实训 199
9.1 实训指导书 199
9.2 案例引入 201
9.3 需求规格说明书 202
9.4 测试计划编写(节选) 225
9.5 测试用例(功能测试)设计(节选) 233
9.6 被测程序部署说明 250
9.7 测试报告编写(节选) 259
参考文献 268
|
內容試閱:
|
近年来,随着软件行业的飞速发展,软件的规模越来越大,人们对软件质量越来越重视,软件测试工程师的重要性也日益突出,软件测试工程师的需求和待遇都达到了历史新高。
然而,要成为一名合格的软件测试人才,需要经过系统化的、严格的专业培养,要在培养过程中强调实践动手能力和工程应用能力。学习的过程中需要学习者亲力亲为,结合案例实际动手分析,在实践中体会软件测试的真谛。多年的教学实践表明,如果没有亲身的测试体验,就无法真正理解软件测试的方法,就无法灵活应用软件测试的技术。
目前,随着高校软件测试专业和软件测试课程的开设,使得软件测试的教学和专业人才培养都有了长足的进步。但是,在另一方面,现在很多软件测试课程的教学普遍缺少教学案例的支撑,只讲理论不讲实际操作,讲述操作的也不具体详细,一笔带过。归根到底,其主要原因还是软件测试这个行业不够规范、成熟,有些高校教师本身在这方面没有项目经验,所以造成有些高校教师讲授这门课程时没有任何实际的例子可以操作,这无疑会在教学中造成很大的遗憾。本书尽力在知识的系统性和学习的连贯性上作出平衡,以案例为中心,遵循够用为度的课堂原则,采用提出问题分析问题解决问题的思路,很多时候采用了手把手教学的方式,目的是帮助初学者入门,提高学习者学习兴趣。
软件测试课程的教学目标是通过对软件测试基础理论、方法和技能的学习,结合测试流程管理和自动化工具的使用,对软件项目进行测试操作,使学生了解软件测试完整的工作过程,能对完整的项目进行测试,从而实现与测试技能要求的无缝连接。
本书以软件测试所需技能的学习路线为主线进行编写。
第 1 章 软件测试概论,主要的目的是让初学者了解软件测试的行业背景和历史、理解导致软件缺陷的原因和理解什么是软件缺陷。建议安排6个学时进行教学。
第 2 章 软件测试基本概念,介绍了什么是软件测试、软件测试的目的,介绍了测试用例是什么、怎样设计测试用例,重点介绍了软件测试的多维度分类,以此进行软件测试名词扫盲。建议安排4个学时进行教学。
第 3 章 软件测试与软件质量,介绍了软件质量管理、软件测试模型,以及软件测试的总体工作流程、软件开发与软件测试各阶段的联系,重点给初学者灌输软件测试的基本理念8个基本原则。建议安排8个学时进行教学。
第 4 章 黑盒子测试,介绍了什么是黑盒子测试,重点介绍等价类划分、边界值分析、决策表分析等黑盒测试方法,并针对具体的案例来讲解测试用例的设计。建议安排8个学时进行教学。
第 5 章 软件测试资源管理,介绍了为什么要使用软件测试资源管理工具,挑选了HP ALM作为示范,详细地、手把手地呈现了使用ALM进行测试资源管理的整个流程。建议安排12个学时进行教学。
第 6 章 白盒子测试,介绍了什么是白盒子测试、什么是程序控制流图,介绍了数据流分析测试方法,以此做引子,重点介绍了逻辑覆盖测试方法和路径分析测试方法,并针对具体的案例来讲解测试用例的设计。建议安排8个学时进行教学。
第 7 章 性能测试,介绍了什么是性能测试,为什么要使用自动化测试工具来实施性能测试,挑选了HP LoadRunner作为示范,以HP WebTours(航空订票网站)作为案例,详细地、手把手地分解了使用LoadRunner进行性能测试的整个流程。建议安排10个学时进行教学。
第 8 章 软件测试相关文档编写,介绍了测试计划、评审报告和测试报告的编写规范,并给出了具体的文档模板,供学习者参考使用。建议安排6个学时进行教学。
第 9 章 课程综合实训,是软件测试课程学习完毕后安排的综合实训,内容来源于编者指导学生进行的一个综合实训项目,被测程序是具有普遍性、代表性的电子商务网站。随书附带有程序源代码,部署后可以直接开展测试。这一章强调学习者对项目参与过程的亲历和体验,培养学习者解决问题的能力、探究精神和综合实践能力。建议安排一到两周时间让学生进行综合训练。
随书给出了高校教学过程中所需用到的各种文档,例如:课程标准、授课计划和职业能力分析表等等,可以从http:www.tdpress.com51eds下载。同时,作为随书电子资料,给出了讲课所需的课件(PPT)、教学视频、案例和被测程序源代码等。
本书由陈建潮编著,在编写过程中,编者得到了软件教研室各位同事的大力支持和帮助,得到了所指导的学生们的积极配合,其中综合实训程序选取的是马本茂、董有沛小组的作品,测试文档选取的是韦丽芳、赵伟维小组的作品。在此谨向各位同事和同学表示衷心的感谢。
在本书的编写过程中,参考和引用了许多专家、学者的著作和论文,可能在文中未能一一注明,在此谨向相关参考文献的作者表示衷心的感谢。
限于编者的水平,本书难免存在不足和不当之处,恳请读者批评指正。联系方式:vic_c@126.com。
编 者
2018年4月
|
|