JUnit测试经验四则

刚刚加入一个项目,由于项目已经进行到最后阶段,因此我的大部分工作时进行JUnit的测试,每天写大量的JUnit从而从另外的角度得到了对项目工程的认识

1、必须要有明确的需求,并且根据需求首先要写JUnit测试程序,在这些程序中将各个需求具体化,程序化,一旦需求改变,首先更改的是JUnit测试程序,或是增加或是减少,或者根据需求改变assert方法的各个变量。如果不按照这个步骤去做,做到后来很可能是在不停的修改JUnit来适应程序的改变,这样一来JUnit也失去了它存在的价值。

2、各个层次的测试要分清楚,不要做没有必要的重复测试。比如:我们会用到很多自己写得class作为变量,作为结果,那么在使用之前这些class他们提供的功能要首先是经过JUnit测试的,这样一来,我们就没有必要测试这些结果,或者作为参数时是否已经进行了验证。

3、对于方法参数的验证一定要层次化,一般来说,首先检查是不是null,然后是这个参数中包含的必要属性是否都有数据。据个例子来说,在目前的项目中有一个搜索参数的class,这个class包含了所有搜索方法会用到的属性,其中也包括了一些都要用到的属性,比如要返回的总数、开始的位置、升降序等。对于这样的参数我们应该首先在接到这个参数之前检查是不是null,然后检查这个参数的type是否正确,然后根据type检查所需要的所有属性是否为空,最后如果有必要我们在检查这些属性的中的数据是否符合要求,比如说是一个数据是否存在等。当然这个并不是JUnit中的规则,而是我们书写程序的规则。

4、这一条还是程序的的编码规则,就是对于各种情况处理要统一,这样一来,我们编写的code才更容易被别人了解,这一规则在service或者比较底层的程序更加重要。比如说对于一个因为数据不对产生的结果来说,我们一般有两种处理方案,一、掷出异常,二、返回没有数据的结果(可以是null,也可以是空的数组或者Collection等),这是我们最好只采用一种方案,而不是有的时候是null,有的时候是空数组,有的时候是异常。

一点经验和大家分享,欢迎抛砖。

版权所有: idilent 网站转载请注明作者并链接到http://blog.csdn.net/idilent
其他转载方式请与作者联系(
idilent@yahoo.com.cn)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 11
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值