软件质量保证与测试》课程教学大纲
1.课程概况
开课单位
软件学院
课程类型
学科基础课程和专业必修课程
课程名称
软件质量保证与测试
课程代码
1610362B
开课学期
第6学期
学时/学分
32/2.5
选课对象
软件工程专业本科生
先修课程
软件工程导论、软件架构设计、需求工程、软件构造
课程教材
朱少民. 软件测试方法和技术(第3版,国家十二五规划教材). 清华大学出版社,2014
课程简介
    本课程为软件工程专业开设的必修课,也是计算机科学与技术软件开发方向课程
    本课程与培养目标的关系是:软件测试工作要求学生具备软件测试基本理论、技术方法和项目测试实施及项目测试管理等职业能力,使学生能够设计测试用例、使用自动化工具完成完整的项目测试和项目测试管理,使学生能基本承担起软件测试的工作任务,具备软件测试岗位必备的职业能力,同时为学生获取软件测试工程师职业资格证书奠定基础
    课程主要讲述的内容为:测试基本理论与技术、主流的自动化测试工具、软件项目的测试实施及项目测试管理等内容
课程目标(Course Objectives, CO)
对应的专业培养目标 (Learning Objectives, LO)
(CO1)掌握软件测试的基本概念和知识
(LO3)具备语言、交流、写作等基本的软件从业能力,拥有较好的沟通技巧和团队工作能力,通晓、遵守、认同现行的法律、道德和伦理。
(LO5) 受到良好的软件工程训练,具有较强的工程实践能力;熟悉软件工程相关工具,具备运用先进的工程化方法、技术和工具从事某一应用领域软件分析、设计、开发、维护等工作的能力。
(LO6) 对软件系统、计算机系统、信息系统乃至与计算机软件相关的社会系统具有系统级的认识能力,有较强的实践能力,具有一定的系统分析和软件设计的能力,初步具备面向领域需求的信息化系统设计和开发能力。
(CO2)掌握软件测试的方法、技术及其工具
(CO3)基于项目背景和用户需求,能够完成测试任务的分析、设计和执行
教学方式(Pedagogical Methods, PM)
PM1.讲授法教学
16  学时  45 %
PM2.研讨式学习
8  学时  25 %
PM3.案例教学
4  学时 15 %
PM4.网络教学
  学时  %
PM5.角扮演教学
  学时  %
PM6.体验学习
4  学时  15 %
PM7.服务学习
  学时  %
PM8.自主学习
学时 0 %
评估方式(Evaluation Methods, EM)
EM1.课堂测试
15%
EM 2.期中考试            %
EM5.实验分析报告      15%
EM3.期末考试
  %
EM4.作业撰写
15%
EM6.期末报告
35 %
EM7.课堂演讲
15%
EM8.论文撰述            %
EM11.设计报告            % 
EM9.出勤率
5 %
EM10.口试
%
2.
教学日历
课次
学时
课程目标
教 学 主 要 内 容
教学方式
评估方式
1
2
CO1
课程介绍、软件测试基本概念
PM1
持续集成的概念EM9
2
2
CO1
软件质量、质量度量模型、测试与SQA关系
PM1
EM4
3
2
CO2
软件测试基本方法-基于需求的测试方法
PM2 PM6
EM4
4
2
CO3
软件测试基本方法-结构化测试方法
PM3
EM7
5
2
CO3
实验一  针对某个具体问题的验证进行测试用例设计
EM5
6
2
CO1
过程模型和标准
PM3
EM7
7
2
CO2
单元测试-代码评审
PM1
EM1
8
2
CO2
单元测试-JUnit
PM3
EM7
9
2
CO3
实验二  JUnit安装和应用
EM5
10
2
CO2
持续集成测试
PM1PM6
EM8
11
2
CO3
实验三  搭建持续集成测试的环境
EM5
12
2
CO2
系统功能测试
PM1
EM4
13
2
CO2
国际化/本地化
PM1
EM4
14
2
CO2
系统测试 -性能测试
PM3 PM6
EM7
15
2
CO3
实验四  针对应用系统完成其基本的性能测试
EM5
16
2
CO2
系统测试 -安全性测试
PM3
EM7
17
2
CO2
验收测试
PM1
EM4
18
2
CO3
实验五  针对应用系统进行渗透性测试
EM5
19
2
CO2
自动化测试原理与工具
PM1 PM6
EM4
20
2
CO3
实验六  构建轻量级的自动化测试框架
EM7
21
2
CO2
测试用例设计与维护
PM1
EM8
22
2
CO2
缺陷报告与测试报告
PM1
EM4
23
2
CO3
课程期末答辩
PM2
EM6
总学时44 其中课内 32学时,实验12学时  上机0学时

4教学内容及要求
I) 课程部分
第一单元(章) 引论
教学要求
了解软件测试的概念、软件测试的发展历史,理解为什么要进行软件测试、软件测试和软件开发的关系。
教学重点
软件测试的概念、软件测试和软件开发的关系
教学难点
从不同视角理解什么是软件测试。
第二单元(章) 软件测试的基本概念
教学要求
了解缺陷、质量、软件测试的分类、阶段和过程等概念,理解软件测试辩证的关系、质量保证与测试的区别、为什么测试越早越好等。
教学重点
软件缺陷(Bug)的含义,验证和确认、软件测试的分类,静态测试与动态测试、主动测试与被动测试、黑盒测试与白盒测试、测试级别:单元、集成、系统和验收、软件测试计划与用例、质量保证与测试的区别。
教学难点
软件测试分类、软件测试辩证的关系、质量保证与测试的区别。
第三单元(章)软件测试方法
教学要求
了解各种软件测试方法,理解软件测试方法的应用场景,掌握软件测试的各种具体方法,如等价类划分、边界值分析、判定表、因果图、两两组合方法、正交实验法、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖、基本路径覆盖。
教学重点
基于直觉和经验的方法、基于输入域的方法、基于组合及其优化的技术、基于逻辑覆盖的方法、基于故障模式的测试方法。
教学难点
基于模型的测试方法、形式化方法。
第四单元(章)软件测试流程和规范
教学要求
了解软件测试流程和规范,理解传统的软件测试过程与敏捷测试过程的区别、软件测试学派的特点,掌握基于风险的测试策略。
教学重点
传统的软件测试过程、敏捷测试过程、基于风险的测试策略、测试过程改进、软件测试规范。
教学难点
基于风险的测试策略、测试过程改进
第五单元(章)单元测试与集成测试
教学要求
了解单元测试与集成测试的相关知识,理解单元测试的重要性和不同形式的应用场景,掌握单元测试与集成测试的方法、工具等。
教学重点
代码评审、动态测试技术、单元测试的常用工具、持续集成测试环境搭建。
教学难点
动态测试技术、持续集成测试环境搭建。
第六单元(章) 软件系统测试
教学要求
了解系统的不同测试类型及其过程,理解不同类型的系统测试特点、回归测试策略,掌握不同类型的系统测试的方法和工具。
教学重点
功能测试与回归测试、性能测试、压力测试、容量测试、安全性测试、容错性测试、兼容性测试的方法和工具。
教学难点
性能测试、安全性测试、回归测试策略。
第七单元(章) 验收测试
教学要求
了解验收测试及其相关测试的过程,理解传统开发中验收测试和敏捷开发中验收测试的区别,掌握验收测试的方法。
教学重点
用户界面和易用性测试、可安装性和可恢复性测试。
教学难点
易用性测试、可恢复性测试
第八单元(章)软件本地化测试
教学要求
了解软件国际化(I18N)和本地化(L10N)的概念、过程,理解为什么要进行I18N、L10N测试,掌握I18N、L10N测试方法、工具等。
教学重点
软件国际化(I18N)和本地化(L10N)的测试方法和注意事项,包括对字符集、语言、时区、度量衡单位、文化等方面的验证。
教学难点
字符集、时区、文化等方面的验证。
第九单元(章) 软件自动化测试及其框架
教学要求
了解软件自动化测试及其框架等概念和相关知识,理解软件自动化测试实现的原理,掌握自动化测试工具的使用。
教学重点
流行测试工具的分类和应用,包括自动化测试框架、数据驱动脚本、关键字驱动脚本。
教学难点
自动化测试框架、关键字驱动脚本
第十单元(章) 测试需求分析与测试计划
教学要求
了解测试需求分析与测试计划的具体工作,理解测试需求分析与测试计划的重要性,掌握如何进行测试需求分析、如何制定测试计划的方法
教学重点
测试目标和准则、测试需求分析、测试风险和测试策略、测试项目的估算与进度安排、测试计划的内容与编制。
教学难点
测试需求分析、测试风险和测试策略。
第十一单元(章) 测试用例设计
教学要求

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。