本课程上下文(讲稿写作依据)
一、课程信息
- 课程:软件测试课程设计(154442008)| 专业选修 | 计算机学院
- 学时学分:32 学时 / 2 学分(理论 16+实验 16)| 第 1–17 周(含实验)
- 任课教师:周宇文(13580390715)| 审核人 周瑞红
- 教材:朱少民. 软件测试方法和技术(第 4 版)[M]. 北京:清华大学出版社,2022.
- 考核:考查(过程性考核+课程设计作品与答辩)
- 课程目标:①掌握软件测试基本概念、理论与方法 ②能开展测试分析、设计测试计划与用例 ③能搭建环境、执行测试、使用自动化工具、规范记录与跟踪缺陷 ④能评估测试结果、撰写报告、具备团队协作与工程表达能力
二、第 1、2 次课的教案要点(讲稿必须覆盖)
第 1 次课 第1章 课程导学与引论:为什么必须做软件测试(2 学时)
- 教学方式:多媒体讲授+案例分析 | 支撑:课程目标1
- 学习目标:理解软件缺陷与质量成本的概念;理解软件测试的必要性与价值;掌握软件测试的基本定义;了解本课程的考核方式与课程设计任务
- 教学重点:软件缺陷的代价与质量成本观;软件测试的必要性(真实事故案例);软件测试的定义与学科形成
- 教学难点:区分测试、调试、质量保证三者的边界;理解测试左移与成本非线性增长
- 案例讨论:结合《血狮》案例讨论:如果当年有规范的测试流程,哪些问题可能被提前发现?
- 实践任务:安装并熟悉课程实验环境(浏览器、截图工具、待测小程序)。;完成第一次测试体验:找出给定小程序中至少 2 个缺陷并截图记录。
- 作业:整理 5 个真实软件缺陷事故,标注缺陷类型(兼容/精度/集成/日期/数据等)。;用自己的话写出软件测试的定义,并说明它与调试、质量保证的区别。
- 思政设计:维度=家国情怀·职业道德·质量责任;载体=国外重大事故(Therac-25 放疗仪致死、波音星际客机、骑士资本 4.6 亿美元、AWS S3 宕机)与国产游戏《血狮》的对比案例。;实施=先让学生估算事故损失量级再给真实数据,讨论“如果没有测试把关,交付给用户的是什么”;引到测试人员的职业底线。;观测点=能说出测试与公众利益的关系;课堂发言中体现质量责任意识。
第 2 次课 第2章 软件测试的基本概念(2 学时)
- 教学方式:多媒体讲授+课堂练习 | 支撑:课程目标1、2
- 学习目标:掌握软件测试的分类与测试级别;理解静态测试与动态测试的区别;理解黑盒、白盒与灰盒测试;了解软件测试工作范畴与岗位分工
- 教学重点:测试分类与测试级别;静态测试与动态测试;黑盒测试与白盒测试
- 教学难点:不同测试级别的目标与执行主体;黑盒与白盒方法的选择依据
- 案例讨论:同一段代码缺陷:用黑盒视角与白盒视角分别能发现什么?
- 实践任务:使用等价类与边界值思路,为登录功能设计 10 条用例。
- 作业:为“学生选课系统”分别列出适合黑盒与白盒测试的功能点。;画出单元—集成—系统—验收四级测试的关系图。
- 思政设计:维度=科学精神·质量观·诚信;载体=软件缺陷与质量成本曲线、ISO/IEC 25010 质量特性、缺陷分类实践。;实施=用“同一缺陷不同视角”的对比练习训练分类思维;讨论“发现缺陷不报告”对团队与用户的后果。;观测点=缺陷分类是否准确;是否如实记录缺陷而不隐去不利结果。
三、页码锚点(必须与课件页一一对应,一页不漏)
- 第 1 章 引论:共 61 页,锚点
【1.1】–【1.61】(课件页序=网页页序)
- 第 2 章 软件测试基本概念:共 87 页,锚点
【2.1】–【2.87】
四、问题页参考答案口径(讲到该页时照此展开)
第 1 章 第 57 页「问题」
问:开发人员测试自己的产品有哪些障碍?TDD 如何克服? 答:①思维盲区——顺着自己的实现思路测,漏掉"没想到"的路径与组合;②心态偏差——倾向证明"我写的是对的";③独立性与时间不足。TDD 的克服:先把期望写成测试再写实现,迫使从需求与接口出发;测试先行形成自动回归网;用例即"可执行规格",减少主观判断。
第 1 章 第 59 页「提问、思考与练习」
①日常质量问题对应缺陷类型:闪退卡顿→性能与可靠性;数据丢失或计算错误→功能与数据缺陷;界面错位乱码→兼容与易用性;更新后旧功能失效→回归缺陷。 ②正反思维:正向思维按规格验证"该做的做到了";反向思维假设程序有错,专挑边界、异常输入与组合去证伪。 ③测试与开发并行协作:需求与设计阶段测试即介入(测试左移),例如需求评审时提出二义性、接口未实现先冻结契约与用例。 ④测试与 SQA:SQA 面向过程(规范、评审、度量、过程改进),测试面向产品(验证与确认、提供质量信息),测试是 SQA 的重要手段之一。
第 2 章 第 85 页「思考题」
①为何说缺陷是质量的对立面:质量是软件满足规定与隐含需求(期望)的程度,缺陷正是违背需求与期望、导致结果不正确的问题;缺陷越多、越严重,质量越低。 ②静态测试与动态测试为何是对立统一体:手段对立(静态不运行程序、动态运行程序),目标统一(发现缺陷、评价质量)且互补(静态查需求二义、设计缺陷与规范;动态验证运行时行为)。 ③为什么测试需求分析是测试计划与测试设计的基础:需求分析回答"测什么"(测试项、范围、优先级、可测性),计划据此确定范围、资源、进度与风险,设计据此确定覆盖与判定准则。
五、案例素材(第 1 章讲课可用)
- 真实事故:Therac-25 放疗仪致死、Intel 奔腾浮点除法错误回收 CPU(4 亿美元)、火星探测器接口未集成测试坠毁、波音星际客机拆散测试未做端到端、骑士资本 45 分钟亏 4.6 亿美元、AWS S3 四小时宕机、国产游戏《血狮》(1997)宣传远超被验证的产品。
- 教材与参考:朱少民《软件测试方法和技术(第 4 版)》,清华大学出版社 2022。