软件质量测试第三章单元测试
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
20
本节内容
3.4单元测试执行
3.4.1单元测试用例规格 3.4.2单元测试用例设计 3.4.3单元测试报告
沈阳师范大学软件学院
21
3.4.1单元测试用例规格
3.4.1单元测试用例规格
测试用例是为特定的目的而设计的一组测试输入、执行条件和预 期的结果。测试用例是执行的最小实体。简单地说,测试用例就是设计 一个场景,使软件程序在这种场景下,必须能够正常运行并且达到程序 所设计的执行结果。主要特征:
沈阳师范大学软件学院
6
3.1.2 单元测试环境构成
3.1.2 单元测试环境构成
单元测试环境
沈阳师范大学软件学院
7
3.1.3单元测试的重要性
3.1.3单元测试的重要性
时间方面: 测试效果: 测试成本: 产品质量:
沈阳师范大学软件学院
8
3.1.4单元测试计划内容
3.1.4单元测试计划内容
沈阳师范大学软件学院
3
3.1.1 单元测试概述
3.1.1 单元测试概述
单元测试就是对已实现的软件最小单元进行测试,以保证构成软
件系统的各个单元的质量
单元测试活动中,强调被测试对象的独立性 单元测试应从各个层次来对单元内部算法、外部功能实现等进行
检验,包括对程序代码的评审和通过运行单元程序来验证其功能 特性等内容。
沈阳师范大学软件学院
4
3.1.1 单元测试概述
3.1.1 单元测试概述
单元测试流程图
沈阳师范大学软件学院
5
3.1.2 单元测试环境构成
3.1.2 单元测试环境构成
对于每一个输入,应该有预期的正确结果。在单元测试时 ,如果一个模块不是独立的程序,需要辅助测试模块,有两种 辅助模块:
驱动模块(Driver):所测模块的主程序。它接收测试数据,把这些数 据传递给所测试模块,最后再输出测试结果。当被测试模块能完成一定 功能时,也可以不要驱动模块。 桩模块(Stub):用来代替所测模块调用的子模块。
局部数据结构测试:模块的局部数据结构是最常见的错 误来源,应设计测试用例以检查以下各种错误:
检查不正确或不一致的数据类型说明; 使用尚未赋值或尚未初始化的变量; 错误的初始值或错误的默认值; 变量名拼写错误或书写错误; 不一致的数据类型。
沈阳师范大学软件学院
17
3.3.3 路径测试
沈阳师范大学软件学院
19
3.3.5 边界测试
3.3.5 边界测试
边界测试:边界上出现错误上常见的。设计测试用例检查:
在 n 次循环的第 0 次、1 次、n 次是否有错误; 运算或判断中取最大最小值时是否有错误; 数据流、控制流中刚好等于、大于、小于确定的比较值时
是否出现错误。
沈阳师范大学软件学院
前言 产品描述 测试概述 控制和协调 资源需求和依赖条件
范例
沈阳师范大学软件学院
9
3.1.4单元测试计划内容
实训一:
首先编写用户注册和登录代码模块,然后编写单元测试计划
沈阳师范大学软件学院
10
本节内容
3.2单元测试设计
3.2.1自顶向下单元测试 3.2.2自底向上单元测试 3.2.3孤立的单元测试
沈阳师范大学软件学院
13
3.2.3孤立的单元测试
3.2.3孤立的单元测试
无需考虑每个单元组件与其他组件之间的关系,分别为每 个组件单独设计桩模块和驱动模块,逐一完成所有单元组 件的测试
沈阳师范大学软件学院
14
本节内容
3.3单元测试实现
3.3.1模块接口测试 3.3.2数据结构测试 3.3.3路径测试 3.3.4错误处理测试 3.3.5边界测试
最有可能抓住错误的; 不是重复的、多余的; 一组相似测试用例中最有效的; 既不是太简单,也不是太复杂。
沈阳师范大学软件学院
22
3.4.2单元测试用例设计
3.4.2单元测试用例设计
单元测试用例模板:
用例ID 设计人员 测试目的 测试级别 用例名称 日期
参考信息 测试环境
前提条件 测试步骤
第三章
单元测试
软件工程系 孟磊 netmenglei@126.com
沈阳师范大学软件学院
1
本章内容
单元测试计划 单元测试设计 单元测试实现 单元测试执行
沈阳师范大学软件学院
2
本节内容
3.1单元测试计划
3.1.1 单元测试概述 3.1.2 单元测试环境构成 3.1.3单元测试的重要性 3.1.4单元测试计划内容
27
沈阳师范大学软件学院
12
3.2.2自底向上单元测试
3.2.2自底向上单元测试
以单元组件的层次及调用关系为依据,先对组件调用图上
的最底层组件进行测试,模拟调用该组件的模块为驱动模 块。 对上一层单元组件进行单元测试,开发调用本层单元组件 的驱动器,同时,要开发被本层单元组件调用的已经完成 单元测试的下层单元组件的桩。驱动器的开发依据调用被 测单元组件的代码,桩的开发依据被本层单元组件调用的 已经完成单元测试下层单元组件代码。 以此类推,直到全部单元组件测试结束
预期结果
范例
沈阳师范大学软件学院
23
3.4.2单元测试用例设计
3.4.2单元测试用例设计
单元测试用例设计一般步骤:
测试需求分析
业务流程分析 测试用例设计 测试用例评审 测试用例更新完善
沈阳师范大学软件学院
24
3.4.2单元测试用例设计
3.4.2 实训二
仿照范例编写登录及注册模块单元测试用例
沈阳师范大学软件学院
25
3.4.3 单元测试报告
3.4.3 单元测试报告
单元测试报告一般包括如下内容:
编写目的
软件单元描述 单元结构 单元控制/时序流图 测试过程 测试结果 质量评估
沈阳师范大学软件学院
26
3.4.3 单元测试报告
3.4.3 实训三
编写ቤተ መጻሕፍቲ ባይዱ录模块测试报告
沈阳师范大学软件学院
沈阳师范大学软件学院
15
3.3.1模块接口测试
3.3.1模块接口测试
模块接口:测试模块的数据流。如果数据不能正确地 输入和输出,就谈不上进行其他测试。模块接口测试是单元 测试的基础。只有在数据能正确流入、流出模块的前提下, 其他测试才有意义。
沈阳师范大学软件学院
16
3.3.2数据结构测试
3.3.2数据结构测试
沈阳师范大学软件学院
11
3.2.1自顶向下单元测试
3.2.1自顶向下单元测试
以单元组件的层次及调用关系为依据,从最顶层开始,把
被顶层调用的单元做成桩模块 对第二层单元组件进行测试,如果第二层单元组件又被其 上层调用,以上层已测试的单元代码为依据开发驱动模块 来测试第二层单元组件。同时,如果有被第二层单元组件 调用的下一层单元组件,则还需依据其下一层单元组件开 发桩,桩的数量可以有多个 以此类推,直到全部单元组件测试结束
3.3.3 路径测试
对基本执行路径和循环进行测试会发现大量的错误。根 据白盒测试和黑盒测试用例设计方法设计测试用例。设计测 试用例查找由于错误的计算、不正确的比较或不正常的控制 流而导致的错误。
沈阳师范大学软件学院
18
3.3.4 错误处理测试
3.3.4 错误处理测试
比较完善的模块设计要求能预见出错的条件,并设置适 当的出错处理对策,以便在程序出错时,能对出错程序重新 做安排,保证其逻辑上的正确性。这种出错处理也是模块功 能的一部分。