《软件测试方法和技术(第3版)》课程教学大纲

  • 格式:doc
  • 大小:137.50 KB
  • 文档页数:7

《软件质量保证与测试》课程教学大纲

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)的测试方法和注意事项,包括对字符集、语言、时区、度量衡单位、文化等方面的验证。

教学难点

字符集、时区、文化等方面的验证。

第九单元(章) 软件自动化测试及其框架

教学要求

了解软件自动化测试及其框架等概念和相关知识,理解软件自动化测试实现的原理,掌握自动化测试工具的使用。

教学重点

流行测试工具的分类和应用,包括自动化测试框架、数据驱动脚本、关键字驱动脚本。

教学难点

自动化测试框架、关键字驱动脚本

第十单元(章) 测试需求分析与测试计划

教学要求

了解测试需求分析与测试计划的具体工作,理解测试需求分析与测试计划的重要性,掌握如何进行测试需求分析、如何制定测试计划的方法。

教学重点

测试目标和准则、测试需求分析、测试风险和测试策略、测试项目的估算与进度安排、测试计划的内容与编制。

教学难点

测试需求分析、测试风险和测试策略。

第十一单元(章) 测试用例设计

教学要求

了解测试用例设计的具体工作,理解测试用例的重要性,掌握测试用例设计的基本原则和书写格式等。

教学重点

测试用例设计书写标准、测试用例设计基本原则和考虑因素。

教学难点

测试用例设计基本原则。

第十二单元(章) 测试执行、缺陷报告与跟踪

教学要求

了解测试执行、缺陷报告与跟踪的具体工作,理解软件缺陷跟踪和分析的重要性,掌握测试执行、缺陷报告与跟踪等方法、工具和实践。

教学重点

软件测试执行与跟踪、软件缺陷生命周期、软件缺陷的描述、软件缺陷跟踪和分析、软件缺陷跟踪系统。

教学难点

软件测试执行与跟踪、软件缺陷生命周期。

第十三单元(章) 质量分析与软件测试报告

教学要求

了解质量分析与软件测试报告的具体工作,理解质量度量、测试覆盖率等内涵,掌握质量分析方法、工具。

教学重点

软件产品的质量度量、评估系统测试的覆盖程度、基于缺陷分析的产品质量评估、测试报告的具体内容。

教学难点

评估系统测试的覆盖程度、基于缺陷分析的产品质量评估。

(II)实验部分