spring boot单元测试mock代理接口

2019-10-21  本文已影响0人  wuli见见

场景:

在类中注入DAO接口,如Mapper,实际是一个代理接口,单元测试的时候模拟SQL语句返回结果。

解决方法:

在接口注入属性上添加@Setter注释,或者Setter方法,

Service类

单元测试类使用@InjectMocks和@Mock注解

@InjectMocks注解,注入Service类

@Mock注解,需要mock的接口

测试类

注意:

如果TestService中有多个属性,但是只想mock其中部分接口,比如

多个注入属性Service

只想mock TestMapper类,其他TestMapper2和TestMapper3仍然使用实际的接口

则需要在测试类的Service注入属性上加@Resource或者@Autowired注解即可

只mockTestMapper一个接口
上一篇下一篇

猜你喜欢

热点阅读