【发布时间】:2020-12-08 14:10:53
【问题描述】:
我有一个抽象类和一个派生类。派生类是一个服务,因此会自动装配到测试类中。我需要模拟和测试抽象类中有一个方法。我当前的实现不起作用,我不确定为什么。
我已经为我想要测试的类创建了一个间谍,并在测试中使用该间谍调用了该方法。但仍然 mockito 无法返回我的模拟值。
abstract class AbstractMyClass {
fun hello(): String {
"bello"
}
}
@Service
class MyClass: AbstractMyClass() {}
我的测试存根是
@Autowired
private lateinit var myClass: MyClass
@Test
fun `test hello`() {
val spy = Mockito.spy(myClass)
Mockito.doReturn("cello").`when`(spy).hello()
val res = spy.hello()
Assert.assertEquals("cello", res)
}
我在这里做错了什么?
【问题讨论】:
标签: spring-boot unit-testing kotlin mockito