设为首页收藏本站

安卓茶网

 找回密码
 我要注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 884|回复: 0

从白盒测试到单元测试基础原理

[复制链接]

19

主题

20

帖子

142

积分

注册会员

Rank: 2

积分
142
发表于 2016-11-22 14:54:12 | 显示全部楼层 |阅读模式


之前已经讲了一些白盒测试测试的原理及一些方法,这次,我们从白盒测试出发,讲讲单元测试,相信做过的朋友都了解,今天就线简单说说单元测试的原理。


从重点开始,还是用例设计,单元测试用例的设计方法有很多,先总结单元测试用例的设计原则:               


控制每个用例的检查点数目,最好是一个用例检查一个点;用例之间杜绝数据依赖,或者关联影响;用例不仅要覆盖正确情况,还要测试异常情况,检查函数健壮性;用例要尽可能覆盖到较多的逻辑路径;用例要做到对检查点敏感,在功能失效时候能立即反馈。


那么编码实现单元测试用例的过程中,有一些需要注意一下问题:     

编码规范性。为了提高程序可读性,建议大家使用匈牙利命名法来命名程序中的变量,方便团队合作;
合适的注释。注释不是越多越好,好的注释旨在提供有用的信息,要清楚明了,避免缩写。建议在函数头加上注释,统一列出函数的功能,输入输出参数,返回值,调用场景等;
确保代码和注释的一致性。如果有注释,请在代码变动的同时,维护相应的注释;否则不如没有注释;
减少重复代码。比如每个case中都进行数据初始化,检查数据正确性的操作,就可以把这些提取为辅助函数,便于修改和维护;  
充分使用断言。在用例中,如果对某一点的数据状态不清楚,请用assert.一来,如果有数据异常,可以第一时间定位到;二来,可以避免因为数据问题造成用例崩溃;
数据逻辑隔离。可以考虑把用例中的数据和逻辑验证分割开来,既可以方便维护,又使得各个用例清晰易读。


需要注意的是,单测的价值远不止于这种一次性的测试:   
一般性用途:定位问题,验证bug
回归运行:自动化测试,减少手工回归;   
持续集成:通过累积单测,并在每一次代码变更时,自动运行单测。达成对代码的实时监控和自动测试;
扩大覆盖:持续积累单测,可以逐步扩大对当前项目的测试覆盖度;
策略参考:每一个case的检查点都是对策略的解读,读懂白盒case,也就明了了代码策略。


这次从单元测试的设计、实现、价值等简单叙述了,之后在从实例上写写单元测试的调试问题。



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 我要注册

本版积分规则



QQ|申请友链|手机版|安卓茶网 ( 豫ICP备13002090号 公安备案豫公网安备 41010202002428号  

GMT+8, 2017-9-20 06:20 , Processed in 0.178822 second(s), 26 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表