《软件测试技术》课程教学大纲(本科).docx
软件测试技术(Software Testing Technology)课程编号:06410188学 分:2学时:32 (其中:课堂教学学时:24 实验学时:0上机学时:8 课程实践学时:0 ) 先修课程:软件工程、面向对象建模技术、面向对象程序设计适用专业:软件工程' 信息安全、计算机科学与技术教 材:软件测试基础(英文版or中文版),阿曼(Paul Ammann)(作者),奥法 特(Jeff Offutt)(作者).出版社:机械工业出版社。一、课程性质与课程目标(-)课程性质(需说明课程对人才培养方面的贡献)软件测试技术课程是软件工程专业的一门重要专业方向选修课程。本课程主要介绍软件测 试的基本知识和基本方法,并将它们应用于不同的测试阶段,满足不同的应用系统测试的需求, 从而有效提高软件的质量。通过学习软件测试理论知识和业界主流及通用技术,使学生掌握软 件测试的基本概念和基本理论,理解软件测试与软件质量的关系,掌握基本测试技术和方法, 并应用到实践中。能够采用恰当的软件测试方法和工具对软件进行验证和分析,给出软件实施 和维护方案,并能够对软件进行质量分析飞(二)课程目标(根据课程特点和对毕业要求的贡献,确定课程目标。应包括知识目标和 能力目标。)本课程的任务,学生掌握软件测试的基本概念和基本理论,理解软件测试与软件质量的关 系。掌握基本测试技术和方法,会设计测试用例。能够基于软件测试方法和工具对软件进行验 证和分析,同时撰写测试方案和测试报告,最终能够对软件进行质量分析。具体包括:课程目标1:理解软件测试的基本概念和意义课程目标2:掌握软件测试的基本步骤课程目标3:掌握常用的软件测试基本方法及测试方案撰写要求课程目标4:能够熟练使用一种软件测试工具课程目标5:能够根据软件质量要求设计相应的测试用例课程目标6:能够在复杂软件质量问题中运用软件测试知识进行质量分析课程目标7:在软件质量确保活动中,能够设计相应的测试方案 注:工程类专业通识课程的课程目标应覆盖相应的工程教育认证毕业要求通用标准;(三)课程目标与专业毕业要求指标点的对应关系(认证专业专业必修课程填写)本课程支撑专业培养计划中毕业要求指标点如下:指标点2. 5能够应用数学、自然科学和工程科学的基本原理证实解决方案的合理性;指标点3.1能够根据复杂软件工程问题的需求确定基本思路和方案;指标点4. 3能够建立软件模型、设计实验、分析与解释数据、并通过信息综合得到合理有 效的结论;指标点5. 2能够使用恰当的工具和技术对软件体系架构和设计模式进行选择,并完成软件 设计,并理解选择的局限性;指标点5.4能够采用恰当的方法和工具对软件进行测试和验证,并能够给出应用和维护方 案;指标点7.2能够了解行业标准、规范和技术发展趋势;年程目标 毕业益、 指标点 课程目标1课程目标 2课程目标 3课程目标 4课程目标5课程目标6课程目标72.5/3.1/4.3/5.2/5.4/7.2注:课程目标与毕业要求指标点对接的单元格中可输入也可标注“H、M、二、课程内容与教学要求(按章撰写)第一章软件测试基础知识(一)课程内容(1)软件质量与可靠性概述(2)软件测试的发展历史及意义(3)软件测试的基本知识(二)教学要求(1)掌握软件测试的基本知识,了解软件质量与软件测试的关系。(三)重难点(1)重点是软件测试的概念及意义;(2)难点是软件测试和软件质量的关系。第二章软件测试基本技术(一)课程内容(1)白盒测试技术(2)黑盒测试技术(3)测试用例的设计(二)教学要求掌握白盒测试和黑盒测试的方法,了解测试用例设计的基本方法。(三)重难点(1)重点是基于白盒测试的测试用例生成方法。(2)难点是白盒测试和黑盒测试用例设计方法的灵活运用。第三章软件测试过程(一)课程内容(1)软件测试过程概述(2)单元测试、集成测试、系统测试、验收测试(3)回归测试、(二)教学要求掌握软件测试过程的概念,理解软件测试过程的各个阶段。(三)重难点(1)重点是单元测试中测试用例生成方法。(2)难点是回归测试用例选择和约减。第四章软件缺陷与测试评测(-)课程内容(1) 软件缺陷的定义和分类软件缺陷的报告模板及管理(2) 软件测试的评测方法(二)教学要求了解软件缺陷的描述内容和分类,掌握软件测试的评测方法(三)重难点(1)重点是软件缺陷的报告和分类方法。(2)难点是如何评测软件测试的优劣。第五章测试项目管理(一)课程内容(1)测试项目管理的含义(2)测试计划与测试过程管理(3)测试的组织与人员管理(4)软件测试的风险管理(5)软件测试的成本管理(二)教学要求了解测试项目管理含义,理解测试项目管理的基本内容(三)重难点(1)重点是软件测试方案的撰写。(2)难点是软件测试的风险及成本预算。第六章软件测试自动化(一)课程内容(1)测试自动化的内涵(2)自动化测试的原理(3)测试工具的分类和选择(4)常用自动化测试工具的使用(二)教学要求 了解测试自动化的含义,理解自动化测试的工作原理,掌握几种自 动化测试工具的使用。(三)重难点(1)重点是自动化测试脚本的设计与生成。(2)难点是如何灵活使用不同的自动化测试工具。第七章 测试项目实践(一)课程内容(1)被测软件项目介绍(2)测试计划(3)测试过程(4)测试用例与测试缺陷报告(5)测试总结报告、(二)教学要求理解实际的软件测试项目和测试过程。(三)重难点(1)重点是如何制定测试计划。(2)难点是测试总结报告的撰写。三、本课程开设的实验项目(如课程不含实验,该项可不填)编号实验项目名称学时类型要求支撑的课程目标1对现有程序代码的单元模块 进行路径、语句和分支覆盖4综合性必做课程目标4、52对现有软件设计测试方案并撰写测试报告4设计性必做课程目标6、7注:1.“类型”填验证性、综合性、设计性等;2.“要求”填必做、选做。实验1:对现有程序代码的单元模块进行路径、语句和分支覆盖对常用的排序算法和日期算法进行测试要求:语句测试覆盖率和分支覆盖率达到80%以上。实验2:对现有软件设计测试方案并撰写测试报告对任课老师给出的一个软件,根据要求进行测试。要求:撰写测试方案,选择测试方法,生成测试用例,撰写测试总结报告。四、学时分配及教学方法章(按序填写)教学形式及学时分配主要教学方 法支撑的课程 目标课堂 教学实验上机课程 实践小计(一)软件测试基 础知识22讲授法、讨 论法b 2(二)软件测试基44讲授法、讨1, 2, 3本技术论法(三)软件测试过 程44讲授法、讨 论法2, 3(四)软件缺陷与 测试评测44讲授法、演 示法4, 5(五)测试项目管 理44讲授法、演 示法3, 4, 5(六)软件测试自 动化448讲授法、讨论法5, 6(七)测试项目实 践246讲授法、讨 论法5, 6, 7合计24832讲授法、讨 论法、演示 法1, 2, 3, 4,5, 6, 7注:1 .课程实践学时按相关专业培养计划列入表格;2.主要教学方法包括讲授法、讨论法、演示法、研究型教学方法(基于问题、项目、案例 等教学方法)等。五、课程考核考核形式考核要求考核权重备注(对指标点支持)2. 5 (10%)3. 1 (20%)课堂表现考勤,回答问题10%4.3 (10%)5.2 (30%)5.2 (10%)平时作业作业次数5次,文档和用例10%5.4 (20%)7.2 (20%)4.3 (20%)大作业2次,项目设计及测试方案20%5.2 (20%)5.4 (30%)7.2 (10%)2.5 (10%)3. 1 (20%)4.3 (10%)期末考试闭卷60%5.2 (20%)5.4 (20%)7.2 (10%)注:1 .分学期设置和考核的课程应按学期分别填写上表。2 .考核形式主要包括课堂表现、平时作业、阶段测试、期中考试、期末考试、大作业、小 论文、项目设计和作品等。3 .考核要求包括作业次数、考试方式(开卷、闭卷)、项目设计要求等。4 .考核权重指该考核方式或途径在总成绩中所占比重。六、参考书目及学习资料(书名,主编,出版社,出版时间及版次)1、Page.A., Johnston.K.,译者:张爽等,微软的软件测试之道,机械工业出版社,2009.092、软件测试方法和技术(第3版),朱少民.清华大学出版社.(2014年10月1日)3、The arts of software testing, Glenford J. Myers John Wiley & Sons, Inc. 1979,first book.4、软件测试的概念与方法,聂长海,清华大学出版,时间:2013-05-01七、大纲说明(内容可包括课程基本要求、习题要求及其它一些必要的说明).本课程无课程设计。1 .本课程采用多媒体教学。2 .每次课后布置1-2题作业,作业总量约为7题,占成绩考核的30九 另外布置一 些思考题和新技术的研讨课题,供学生选做,以便深入理解教学内容。2017 年9 月12 日