[转]单元测试应该测试什么?——Right-BICEP

转载 2006年05月30日 00:06:00
Right——结果是否正确?
B——是否所有的边界条件都是正确的?
I——能查一下反响关联吗?
C——能用其它手段交叉检查一下吗?
E——你是否可以强制错误条件发生?
P——是否满足性能要求?

结果是否正确
一个原则是:对于验证被测方法是否正确的这件事情,如果某些做法能够使它变得更架容易,那么就采纳它吧。

边界条件CORRECT
一致性(Conformance)——值是否符合预期的格式?
有序性(Ordering)——一组值是该有序的,还是该无序的?
区间性(Range)——值是否在一个合理的最大值合最小值的范围之内?
引用、耦合性(Reference)——代码是否引用了一些不受代码本身直接控制的外部因素?
基数性(Existence)——是否恰好有足够的值?
时间性,绝对的或者相当的(Time)——所有事情是否都是按顺序发生的?是否在正确的时间?是否及时?

检查反向关联
对于一些方法,我们可以使用反向的逻辑关系来验证它们。要注意的是,当你同时编写了原方法和它的方向测试时,一些bug可能会被在两个函数中都出现的错误所掩盖。在可能的情况下,应该使用不同的原理来编写反向测试。

使用其他手段来实现交叉检查
通常解决一个问题会有多种手段,如果你选择了其中一个方法,那么就可以用其它的方法来检验它。另一种方法就是:使用类本身不同组成部分的数据,并且确信它们能“合起来”。

强制产生错误条件
应当能够通过强制引发错误,来测试你的代码是如何处理所有这些真实世界中的问题的。
下面是一些我们能想到的环境方面的因素:
内存耗光
磁盘用满
时钟出问题
网络不可用或者有问题
系统过载
受限的调色板
显示分辨率过高或者过低

性能特性
一个检查起来会很有益处的部分是性能特性,而不是性能本身。

单元测试、集成测试、系统测试的各自侧重点

单元测试与集成测试的区别: 单元测试与集成测试相比,测试对象有所区别: ►集成测试的被测对象是单元间的组合,这里,不同模块往往是分配给不同的人员开发。集成测试主要关注不同单元模块之间的接口...
  • zjcheer_up
  • zjcheer_up
  • 2014年08月27日 10:09
  • 3118

谈谈单元测试之(一):为什么要进行烦人的单元测试?

前言 最近,在网上看到过一个调查,调查的内容是“程序员在项目开发中编写单元测试的情况”。当然,至于调查的结果,我想聪明的你已经可以猜到了。高达 58.3% 的比例,一般情况下不写单元测试,只有偶尔...
  • happylee6688
  • happylee6688
  • 2014年07月19日 15:48
  • 55775

单元测试框架进行自动化测试

这里介绍这里的单元测试框架只是实现自动化测试的一个手段,对单元测试本身并不产生任何影响——没有单元测试框架,单元测试一样也是可以进行的,只是会痛苦很多。 AD:WOT2015 互联网运维与开发者大会...
  • u012398613
  • u012398613
  • 2015年01月11日 22:41
  • 1475

单元测试中 Right-BICEP 和 CORRECT

在单元测试中,有6个总结出的值得测试的方面,这6个方面统称为 Right-BICEP,通过这6个方面的指导,可以较完全的测试出代码中的bug。本文就是简单的介绍 Right-BICEP 到底指的哪6个...
  • gd920129
  • gd920129
  • 2014年05月04日 01:17
  • 1554

Java基础学习总结(89)——为什么单元测试应该我们开发人员来写

软件测试是为了保证项目质量,单元测试可以快速执行测试回归测试,做好单元测试可以大大提升测试效率,项目开发真正达到敏捷效果。 单元测试做什么? 1. 核心类方法 2. 异常处理 ...
  • u012562943
  • u012562943
  • 2016年12月22日 09:50
  • 912

TestDriven_NET2_0——单元测试的好助手

  • 2011年11月09日 17:59
  • 16KB
  • 下载

单元测试之道C#版——使用Nunit pdf格式

  • 2018年01月03日 10:34
  • 5.76MB
  • 下载

<AndroidStudio单元测试——instrumentation>源码

  • 2014年07月23日 11:47
  • 3.42MB
  • 下载

单元测试之道C#版——使用Nunit, pdf格式

  • 2011年05月30日 14:07
  • 6.29MB
  • 下载

软件单元测试——JUnit使用

  • 2011年08月15日 12:17
  • 382KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[转]单元测试应该测试什么?——Right-BICEP
举报原因:
原因补充:

(最多只允许输入30个字)