您好,欢迎访问三七文档
单元测试1什么是单元测试2单元测试的目标和任务3测试方法4单元测试过程5单元测试的常用工具简介1单元测试的定义定义:单元测试是对软件基本组成单元进行的测试。别名:模块测试时机:一般在代码完成后由开发人员完成,QA人员辅助.测试对象:模块(类或函数)测试目的:检验程序最小单位有无错误。检验单元编码与设计是否吻合测试技术:白盒或黑盒、静态测试测试人员:一般由编程人员和测试人员共同完成,以开发人员为主单元测试的背景编程过程中,每写100行代码会犯150个错误编程与编译运行结束后,每100行代码中大约残留有1-3个Bug寻找与修改程序错误的代价占总体开发投资的40%-80%Bug在整个研发流程中被发现的越早,修改的代价就越低2单元测试的目标和任务目标:单元模块被正确编码任务1:模块接口测试输入的实际参数与形式参数的个数是否相同。输入的实际参数与形式参数的属性是否匹配。调用其它模块时所给实际参数的个数是否与被调模块的形参个数是否相同。调用其它模块时所给实际参数的属性是否与被调模块的形参属性是否匹配。是否存在与当前入口点无关的参数引用。是否修改了只读型数据。对全局变量的定义各模块是否一致。是否把某些约束条件作为参数传递。模块接口测试是单元测试的基础,只有在数据正确流入和流出模块的前提下,其它测试才有意义,接口测试要考虑如下因素:任务1:模块接口测试如果程序包括外部输入或输出,要考虑以下因素:文件属性是否正确;OPEN与CLOSE语句是否正确;缓冲区容量与记录长度是否匹配;在进行读写操作之前是否打开了文件;在结束文件处理时是否关闭了文件;正文书写/输入错误I/O错误是否检查并做了处理。任务2:模块局部数据结构测试检查局部数据结构是为了保证临时存储在模块内的数据在程序执行过程中完整、正确,局部功能是整个功能运行的基础。重点是一些函数是否正确执行,内部是否运行正确。局部数据结构往往是错误的根源,应仔细设计测试用例,力求发现下面几类错误:不合适或不相容的类型说明;变量无初值;变量初始化或缺省值有错;不正确的变量名出现上溢、下溢和地址异常任务3:模块边界条件测试边界条件测试是单元测试中最重要的一项任务,因为软件经常在边界上失效,这也是功能测试的重点要注意变量的存储空间,比如输入两个长整型变量,但是内部临时变量用了一个整型变量。任务4:模块独立执行通路测试检查每一条独立执行路径的测试。保证每条语句被至少执行一次。查找由于错误的计算、不正确的比较或不正常的控制流而导致的错误。具体的做法是程序员逐条调试语句误解或用错了算符优先级。混合类型运算。循环变量初值错。比较精度不够。表达式符号错。不同数据类型的对象之间进行比较。因计算机表示的局限性,期望理论上相等而实际上不相等的两个量相等。比较运算或变量出错。循环终止条件不可能出现。迭代发散时不能退出。错误地修改了循环变量。任务5:模块的各条错误处理通路测试如果用户不按正常操作,程序就退出或停止工作,实际上也是一种缺陷,因此单元测试要测试各种错误处理路径。一般着重检查下列问题:记录的错误与实际不相符。输出的出错信息难以理解。程序定义的出错处理前系统已介入。异常处理不当。未提供足够的定位出错的信息。3测试方法运行单元程序有时需要基于被测单元的接口,开发相应的驱动模块和桩模块。驱动模块(drive):对底层或子层模块进行测试所编写的调用这些模块的程序。桩模块(stub):对顶层或上层模块进行测试时所编写的替代下层模块的程序。3测试方法除了采用白盒和黑盒测试设计外,另外还得考虑接口测试、性能测试、内存测试4单元测试过程过程:1、计划与设计测试2、准备测试环境3、执行测试4、测试总结单元测试过程步骤步骤描述输入工件输出工件建议开始时机计划与设计测试开发人员制定单元测试计划《项目计划》《详细设计说明书》《概要设计说明书》《单元测试计划》和《测试用例设计说明书》详细设计阶段结束后准备测试环境搭建测试环境《单元测试计划》运行环境执行测试开发人员执行记录BUG《单元测试计划》缺陷列表(记录在测试用例中)测试驱动及桩模块对代码打上标签后测试总结开发人员编写测试报告《单元测试计划》、缺陷列表《单元测试报告》单元测试结束后单元测试通过准则1、单元测试用例上规定的测试项已通过测试;2、《单元测试报告》已通过评审;3、所有单元已经过测试,并且每个组件正确;4、单元测试对代码的覆盖率至少达到80%;单元测试输出产品单元测试计划单元测试用例设计说明书单元测试报告代码测试代码测试工具输出报告软件Bug清单6单元测试工具简介内存和资源检查工具RationalPurify测试数据生成工具JTest测试框架工具JUnit代码规范检查工具CheckStyle、PMD以及JalopyRationalPurifyPlus简介:RationalPurify:内存泄露检查。RationalQuantify:性能瓶颈检查。RationalPureCoverage:代码覆盖检查。Q&A
本文标题:单元测试
链接地址:https://www.777doc.com/doc-6302103 .html