第十章:单元测试

上一篇 / 下一篇  2009-07-19 19:03:29 / 个人分类:51第一阶段复习

1.什么是单元测试,单元测试的目的是什么?
单元测试是对软件基本组成单元进行的测试,如函数,一个类的方法。是最小的软件设计单位。
单元测试的目的是在于发现各模块内部可能存在的错误,主要是白盒测试
需要验证单元代码与LLD文档的一致性
需要跟踪与发现LLD文档中的错误
需要发现在编码中引入的错误

2.简述单元测试常用的错误类型并描述相关的具体的信息。
单元接口的错误类型
A.被测单元在参数的描述(个数,属性,顺序)上与LLD文档中不一致
B.修改了只做输入用的形式参数,导致数据的错误修改
C.约束条件通过形参来传递,导致函数间的偶合增大
局部数据结构的错误类型
A.不正确或者不一致的数据类型说明
B.使用尚未赋值初始化的变量
C.错误的初始值或错误的缺省值
D.变量名描写错误或书写错误
E.不一致的数据类型
独立路径的错误类型
A.运算的优先次序不正确
B.运算的方式错误
C.不同数据类型的比较
D.关系表达式中不正确的变量和比较符
E.差1错,从1开始
F.错误的或不可能的循环终止条件
G.当遇到发散的迭代时不能终止的循环
H.不适当的修改了循环的变量
出错处理的错误类型
A.出错的描述难以理解
B.出错的描述不足以对错误定位和确定出错的原因
C.显示的错误与实际的错误不符合
D.对错误条件的处理不正确
E.在对错误进行处理之前,错误条件已经引起系统的干预
边界条件的错误类型
数值,字符,位置,数量,尺寸等。首个,最后一个,最大值,最小值

3.单元测试的策略有哪些?
孤立的测试策略:为每个模块设置桩和驱动,进行独立的单元测试
优点:最简单,最容易操作,可以达到高的覆盖率。
缺点:桩函数和驱动函数工作量大,效率低

自顶向下的单元测试策略:顶层是桩,二层驱动
优点:节省驱动函数的开发工作量,测试效率高
缺点:单元一个一个加入,测试过程越来越复杂,开发和维护成本高

自底向上的单元测试策略
优点:节省桩开发的工作量,效率高
缺点:底层函数的质量对上层函数的测试产生很大影响
混合测试

4.简述单元测试的过程
测试计划阶段—完成单元测试计划
测试设计阶段—完成单元测试方案
测试实施阶段—完成单元测试用例,单元测试规程,单元测试脚本及数据文件
测试执行阶段—执行单元测试用例,执行测试脚本,记录测试结果

5.如何构建CPPUNIT单元测试环境
前期准备
A.在CPPUNIT中打开EXAMPLE中EXAMPLE.dsw工程
B.选中CPPUNITTESTAPP,右击设置此工程为活动工程,点击“RUN”通过测试,此工程为GUI的环境(CPPUNITTESTMAIN是文本测试环境)
C.REBUILD ALL这个项目,生成相关的LIB,DLL文件
构建工程
A.新建工程MFC APPWIZARD EXE工程,放置工程在D盘,点击OK确认,然后选择“DIALOG BASED”,然后完成工程创建
B.调用库文件设置:PROJECT—ADD TO PROJECT—FILE,将CPPUNIT.LIB,CPPUNITD.LIB,TESTRUNNERD.LIB加入到工程中来
C.设置环境变量:TOOLS--OPTIONS--DIRECTORIES—设置INCLUDES文件与LIB文件路径。
D.选择语言:PROJECT—PROJECT SETTINGS—C++ LANGUAGES
E.拷贝TESTRUNNERD.DLL文件放入D盘建立的工程中
工程建立事项
A.在.CPP文件中可以进行相关的代码操作
B.建立测试套,需要添加一个CPP文件与一个头文件.h文件


TAG:

 

评分:0

我来说两句

Open Toolbar