1.适用对象
本教材可作为高等院校计算机相关专业的软件测试技术教材,也可作为有关专业软件测试技术人员的培养教材,同时也是广大软件测试爱好者以及从事软件测试技术方向的爱好者必备的参考资料。
2.学习本教材需要具备的知识和能力基础
阅读本教材,需要具备一定的计算机相关知识基础,理解计算机软件的基础概念和项目开发流程,具有查阅文献资料的基本能力。
3.教材的内容组织
本教材按照工程教育的教学理念,以行业理念、测试技巧与实践实施引导组织教材内容,本教材一共包含六个单元。
单元一:介绍软件测试基础。了解软件测试基本概念、行业发展、软件测试分类、过程模型,以及软件测试行业基本原则。
单元二:介绍软件测试流程。以实际项目为导向,了解软件测试全流程:软件测试需求分析、软件测试计划、软件测试脚本开发、软件测试实施执行,最后如何进行项目测试收尾工作。
单元三:介绍黑盒测试、白盒测试技术实现。以黑盒测试、白盒测试概念引入,实际案例引导,掌握黑盒测试、白盒测试技术实现的方法和技巧。
单元四:介绍功能自动化工具。以Web自动化工具Selenium为主要讲解工具,掌握Web类项目自动化实施技术,完成技术应用理解和测试实战技巧。
单元五:介绍性能测试工具LoadRunner。介绍市场主流的各类性能测试工具,以及达成性能指标的要求,了解和掌握性能测试工具LoadRunner使用方法及技巧。
单元六:介绍压力测试工具JMeter。掌握压力测试工具JMeter实施技巧,组建使用及脚本开发,能够独立完成压力测试项目。
上篇基础篇
单元一走进软件测试3
1.1任务1认识软件测试3
1.1.1软件测试行业介绍4
1.1.2熟悉软件测试概念4
1.1.3认识软件测试发展4
1.1.4认识软件测试的目标及意义5
1.2任务2认识软件测试的分类5
1.2.1按照开发阶段分类5
1.2.2按照测试技术分类7
1.2.3按照测试实施的组织分类7
1.2.4按照被测软件是否运行分类8
1.3任务3认识软件测试过程模型8
1.3.1V模型的学习9
1.3.2W模型的学习10
1.3.3H模型的学习10
1.3.4X模型的学习11
1.4任务4熟悉软件测试原则11
1.4.1软件测试人员所遵循的重要原则11
1.4.2理解软件质量与软件测试12
小结13
作业14
单元二项目的测试流程设计15
2.1任务1项目测试准备工作15
2.1.1准备测试操作系统环境16
2.1.2安装MySQL17
2.1.3安装Tomcat20
2.2任务2实践项目的需求分析24
2.2.1测试需求分析方法25
2.2.2测试需求过程26
2.3任务3实践项目测试计划27
2.3.1测试计划目的与意义28
2.3.2测试计划的各项指标28
2.4任务4实践项目测试设计框架32
2.4.1功能测试设计目标与计划32
2.4.2性能测试设计目标与计划32
2.5任务5实践项目测试实施目标33
2.6任务6实践项目测试评估34
2.7单元实训36
小结36
作业37
单元三实践项目的测试用例技术实现38
目录3.1任务1实践项目测试用例设计39
3.1.1测试用例的定义39
3.1.2测试用例的特征39
3.1.3设计测试用例的基本准则40
3.2任务2实践黑盒测试及用例设计方法41
3.2.1黑盒测试的定义41
3.2.2黑盒测试的用途41
3.2.3等价类划分法42
3.2.4边界值分析法44
3.2.5因果图法45
3.2.6决策表法48
3.2.7场景法50
3.3任务3实践白盒测试及用例设计方法53
3.3.1白盒测试的定义53
3.3.2白盒测试的意义53
3.3.3逻辑覆盖法54
3.3.4基本路径测试法60
3.3.5循环测试法64
3.3.6程序插桩技术65
3.4单元实训67
小结68
作业68
下篇实战篇
实战项目案例介绍73
项目一东软医疗管理系统73
项目二Elm饿了吗前后端分离Web项目77
单元四“东软医疗系统”的自动化测试实现——Selenium80
4.1任务1认识自动化工具的背景81
4.2任务2熟悉Selenium的核心概念81
4.3任务3上手Selenium组件82
4.3.1安装Python环境82
4.3.2Selenium IDE89
4.3.3Selenium Remote Control(RC)89
4.3.4Selenium Grid90
4.4任务4Selenium功能实操91
4.4.1Selenium插件界面和功能介绍91
4.4.2常用的Selenium API96
4.5单元实训123
小结124
作业124
单元五“东软医疗系统”的性能测试实现——LoadRunner125
5.1任务1认识LoadRunner126
5.2任务2LoadRunner组件相关介绍134
5.3任务3实践典型的性能测试任务135
5.3.1实例设计136
5.3.2录制脚本138
5.3.3脚本开发——思考时间143
5.3.4脚本开发——参数化145
5.3.5脚本开发——集合点153
5.3.6脚本开发——事务154
5.3.7场景设计155
5.3.8场景设计常见配置158
5.3.9场景运行160
5.3.10运行Analysis分析结果163
5.4单元实训167
小结167
作业168
单元六“东软医疗系统”与互联网的压力测试实现——JMeter169
6.1任务1认识JMeter170
6.1.1JMeter工具介绍170
6.1.2安装性能测试工具JMeter170
6.1.3JMeter工具界面介绍171
6.2任务2熟悉JMeter功能171
6.2.1JMeter功能详解说明171
6.2.2JMeter功能详解实践172
6.3任务3使用JMeter抓包实现230
6.3.1Fiddler抓包技术介绍230
6.4任务4互联网产品的压力测试实践236
6.4.1基于互联网的百度搜索接口测试236
6.5单元实训240
小结241
作业242
参考文献243
目录
1.预期学习效果
本教材旨在提升学生的专业素质、专业技能与测试兴趣,构建学生在软件测试方面技巧和能力,逐步提升软件项目测试能力,为软件测试行业技术实施奠定基础。
预期达到的学习效果如下:
(1)专业素质效果
提升学生的软件行业人员相关素质,养成良好的学习习惯,提升分析问题解决问题的能力。能够与团队成员良好合作,相互协作完成任务,能够针对教师布置的任务自主学习新技术新方法,并提出解决方案。
(2)专业能力效果
分析并完成实际项目,能够理解并分析需求,培养具有分析测试脚本开发和测试执行实施能力的综合素质人才。总结软件测试设计思想,理解并熟练运用软件测试技术的基本概念,理解测试技术的概念,运用测试技巧和自动化工具,完成完整的测试执行流程。
(3)工程能力效果
理解一个完整的软件测试项目的计划与实施流程,培养学生实践能力,能够根据需求,完成设计、脚本开发、测试执行与产品质量评估的全过程。
2.教材编写团队
教材由南宁职业技术学院赵朝辉、黄伟担任主编,负责教材的编写思路、体例结构和内容设计,南宁职业技术学院禤静、胡集仪、段仕浩与东软教育科技集团有限公司刘宁担任副主编。本教材是软件测试行业资深教师多年参与测试项目实施与授课经验的结晶。教材配套丰富的数字教学资源(包括项目、案例、习题、教学课件、微课等资源)。
3.教材编写情况
在本教材编写过程中,团队反复学习和研讨党的二十大精神,围绕“育人的根本在于立德”的理念,在教材中融入敬业精神、职业操守等思政元素,以期在专业知识传授和技能训练过程中实现价值引领。教材的编写符合“项目引领单元、任务驱动课堂”的教学理念,在本教材的实战篇使用“东软医疗管理系统”组织测试案例,以真实的测试流程为导向组织教学,形成完整的项目教学内容、活动、情境和结果,流程完整,循序渐进,内容的呈现次序按照初学者学习思路进行编排,条理清晰,语言通俗,容易理解。
本教材参考了一些国内外的著作和文献,在此对著作者致以由衷的谢意。同时感谢对本教材编写给予大力支持与帮助的各位同仁、院校和相关企业单位。
限于作者水平,教材中错误和缺点在所难免,欢迎广大读者提出宝贵意见和建议,我们不胜感激。