单元测试 JUnit + Mockito 用法

JUnit是 Java 很常用的一个包,可以用来进行单元测试,而且配合集群编译,可以很方便的进行自动化测试。

Mockito 是一个用来实现 Mock 的 Java 包,可以用来自动注入虚拟的类对象,以此来接管方法的调用,从而很方便测试一些需要其他类对象的方法。

 

最简单的单测

 

用 mock 来虚拟类的实现,可以用在要测试的类中调用了其他类的对象的情况

其中 when 和 thenReturn 表示当方法调用时返回什么,也可以用 thenThrow 来抛出异常

方法的参数要指定类型,用每个类型对应的 any()  来指定,Mockito 提供了所有的基础类型,和一些集合类,还可以传入类对象来指定类型

 

可以用 verify 来监视方法的调用

 

当要测试的方法中调用了静态方法,那么就需要用 PowerMock 来虚拟

 

如果要测试某个方法是否会抛出异常,可以用 JUnit 里的 ExpectedException 类来测试

 

目前遇到的就是这些场景,如果有需要会再补充

 

Categories: Java