单元测试的思考
现象
- 程序中太多的if else,导致写单元测试覆盖率很难提高
- .Mockito方法后不能返回预设的变量
结论:
- 代码要去除多余的 if 判断
- 尽量用正向逻辑判断 StringUtils.isEmpty() 代替 StringUtils.isNotEmpty() ,写单元测试时,前者不需要分null和空字符串,后者需要
- Mockito遇到返回null问题,一定是Mockito的方法传入的参数有问题。
例如:
Map<String, Object> paramMap1 = new HashMap<>();
paramMap.put("id", 1);
与
Map<String, Object> paramMap2 = new HashMap<>();
paramMap.put("id", "1");
paramMap1 与 paramMap2 作为参数是不一样的,要确定Mockito的方法实际要求传入的类型。