【发布时间】:2019-12-13 08:44:28
【问题描述】:
我创建了一个单元测试,其中我有一个使用PetMapper 和WorkMapper 的PersonMapper,最后,在我的代码中,我使用的是mapstrcut 生成的类而不是我创建的接口已创建。
下面的代码代表我的单元测试:
@SpringBootTest(classes = {PersonMapperImpl.class, PetMapperImpl.class, WorkMapperImpl.class})
public class PersonMapperTest {
@Autowired private PersonMapperImpl personMapperImpl;
@Test
...
}
我的问题是,我希望使用接口,但是在这个单元测试中,我直接放置了 mapstruct 生成的类。这是测试 mapstruct 对象的好方法吗?
【问题讨论】:
-
为什么使用实现而不是接口?
-
因为如果我使用接口,spring 会返回这个异常:
org.springframework.beans.factory.UnsatisfiedDependencyException -
啊..我也很怀疑..查看:github.com/mapstruct/mapstruct/blob/master/processor/src/test/… 我认为您需要@componentscan 注释。
-
还是不行:(