《21世纪高等职业教育计算机系列规划教材:软件测试技术(基于工作过程)》定位于企业实际软件测试工作流程,在分析软件测试“岗位群”的“典型工作任务”的基础上,按照软件开发过程(跳过软件开发过程中的设计),用职业能力描述学习目标,用工作任务陈述学习内容,将软件测试技术划分为测试需求及评审、单元测试、集成测试、系统测试及验收测试这4个学习领域。
书中的内容主要为:软件测试综述、软件测试过程与测试模型、黑盒测试与测试用例设计方法、白盒测试(静态分析与动态测试)的实用技术、单元测试技术、集成测试技术、系统测试、验收测试、测试用例的设计、测试文档的编写、测试项目管理以及上机实训等内容。《21世纪高等职业教育计算机系列规划教材:软件测试技术(基于工作过程)》以学生信息管理系统、HP自带的航班订票系统案例为线索,详细讲述了几个主要测试工具的使用,例如Load Runner、Quality Center、QTP、XUnit等。书中给出了大量的测试用例和实用的模板。
《21世纪高等职业教育计算机系列规划教材:软件测试技术(基于工作过程)》以案例驱动方式将抽象理论知识转化为可触摸的实际操作,全书内容实用,由浅入深,既可作为高等院校软件测试课程的教材,也可作为软件测试人员的自学用书。
本书旨在介绍软件测试技术的基础知识,力求用清晰的逻辑和过程引导读者学习软件测试技术。
本书在内容的选择上没有强求全面覆盖软件测试专业的知识,而是将实际工作中要用到的主要知识、工作过程中的各种模板资料,按照软件测试的实际工作过程的顺序组织在一起。
本书的内容完全按照软件测试的工作过程进行编排。根据实际工作过程,将每个软件测试的工作阶段称为“项目”,再将各工作阶段的工作内容称为“任务”,将每个任务的目标、任务的结果,完成任务需要使用的软件测试技术以及工作过程模板等内容合理地组织在一起,形成相对独立又互为关联的学习单元。
在本书中,每个主要“项目”(对应于软件测试的工作阶段)的开始都包含以下内容:
【学习目标】说明通过此工作阶段的学习需要掌握的知识;
【技能目标】说明通过此工作阶段的学习能够学会的技能;
【主要参与人员】说明在实际工作中,此工作阶段主要有哪些职位的人员参与工作;
【测试主要内容】说明在实际工作中,此工作阶段测试的主要内容;
【所需参照资料】说明要完成此工作阶段的工作需要用到的参考资料。
每个主要“任务”(即实际工作过程中的阶段任务)都包括下述内容:
【任务引入】对本任务内容、任务要求进行说明;
【任务目标】简单描述本任务要达成的目标;
【任务分析】对本任务的完成思路、过程、方法进行分析;
【结果输出】说明完成本任务后的结果;
【相关模板】给出完成本任务需要用到的工作文档、报告等模板;
【知识点睛】介绍完成本任务需要用到的软件测试专业知识;
【思考与讨论】对本节内容学习之后进行复习、归纳、总结、提高的练习题;
【实训题】与本节内容学习相关的课后实训项目,由学习者自主完成实训,这些实训项目既能锻炼学习者的实际动手能力和其他综合素质,又能通过实训工作强化对所学内容的掌握。
本书“项目一”是对后续内容的概述与指引,开始学习时可以通过这部分内容理解后续内容知识间的关系,也可以在后续内容学习过程中通过这部分内容理清学习思路。
本书在内容选择上充分体现了软件测试技术学习的“职业性、实践性”,在内容组织上体现了CDIO的工程教育理念。因此,本书既适用于高职高专软件测试入门课程教材,又适用于推行CDIO教学体系的其他院校作为软件测试课程教材。同时,本书还能作为企业软件测试职位相关人员的业务参考书使用。
本书由南海东软信息技术职业学院、广西经济管理干部学院、桂林航天工业高等专科学校等校的教师共同编写完成。参与编写的教师均具有较丰富的企业工作经验,特别是软件测试职位的工作经验,因此本书内容的选择与编排是对编者实际工作经验的总结与归纳。
本书由魏琴、梅佳担任主编,刘建华、姚庚梅、陈再新担任副主编,其中,前言、项目一由陈再新编写;项目二由刘建华编写;项目四由梅佳编写;项目三、项目六由魏琴编写;项目五由姚庚梅编写。参加本书编写的还有陈惠红、张彤宇等。
为了方便教学,本书配有电子教学课件,请有此需要的教师登录华信教育资源网免费注册后进行下载,如有问题可在网站留言板留言或与电子工业出版社联系。
由于对项目式教学法正处于经验积累和改进过程中,同时,由于编者水平有限和时间仓促,书中难免存在疏漏和不足,希望同行专家和读者能给予批评和指正。
编者
项目一 开始软件测试工作之前的准备
1.1 理解软件开发过程与软件测试的关系
任务一:理解软件开发过程
任务二:从软件开发过程看软件测试的工作过程
1.2 软件测试知识准备
任务一:理解软件测试的基本任务
任务二:理解软件测试关键技术及其在不同阶段的运用
项目二 测试需求
2.1 系统需求分析
任务一:系统需求调研与分析
2.2 系统需求评审
任务一:系统需求评审
2.3 测试需求分析及评审
任务一:功能测试需求分析与评审
任务二:性能测试需求分析与评审
项目三 单元测试
3.1 单元测试计划及评审
任务一:单元测试计划编写与评审
3.2 单元测试设计
任务一:单元测试设计
3.3 单元测试执行
任务一:静态测试及静态代码分析
任务二:使用XUnit 执行单元测试
3.4 单元测试结果与分析
任务一:分析单元测试结果
项目四 集成测试
4.1 集成测试计划及评审
任务一:集成测试计划编写与评审
4.2 集成测试设计
任务一:确定结构视图
任务二:集成测试设计
4.3 集成测试执行与分析
任务一:集成测试的JUnit执行及分析
项目五 系统与验收测试
5.1 测试计划编写及评审
任务一:系统测试计划编写与评审
任务二:验收测试计划编写与评审
5.2 功能测试设计
任务一:功能测试用例的设计
任务二:使用QuickTestPro开发及完善功能测试脚本
5.3 功能测试执行
任务一:手动执行功能测试
任务二:使用QTP执行功能测试
5.4 功能测试结果与分析
任务一:分析功能测试结果
5.5 性能测试设计
任务一:性能测试设计
5.6 性能测试执行
任务一:使用LoadRunner执行性能测试
5.7 性能测试结果与分析
任务一:分析性能测试结果
项目六 测试管理
6.1 理解测试管理
任务一:理解测试管理
6.2 测试管理实施
任务一:管理人员的测试管理实施
任务二:测试人员的测试管理实施
……