单元测试相关:spring test、mockito、h2
背景
本文讨论单元测试,在单测中遇到的迷惑。单测中测一次就删除数据下次就没法再测怎么办,第三方的接口很不稳定我们要怎么测,整个业务规则这么多限制和要求怎么办? 你领导压缩工期没有足够单测的时间怎么办?
关于mockito和h2相关的,后续再发文,敬请不要期待,later is never~
啰嗦
先总结一波目前单测遇到的问题,比较杂,想到什么写什么,罗啰嗦
-
无spring容器启动的单元测试,基本没什么用,因为现在的project都是用spring的,你不注入bean根本就没法测
-
有spring容器启动的单测,我叫 spring test(你们是怎么称呼的?)
-
国内程序员做单测,很少用断言,基本上都是运行单测并打印结果,肉眼观察结果对不对。这是个习惯问题
-
国内领导很少给开发任务留单测的时间,有时候测试花的时间可能比开发还要多,但是很多领导没这样的意识,从而导致单测被草草执行,通常成为时间不足压缩的对象。所以追求覆盖率的单测常常流于形式或者应付(单测保证都难还要求覆盖率)。但是话说回来,写单测还是有好处的,静下心,静下心。。。
-
单测,很多人都是测service层的接口,而不是从Controller层开始测,从而可能导致有些入参判