我正在使用Kotlin,Spring和Spek实现简单的微服务。我想测试我的存储库,但是我想知道如何将仓库注入(inject)到spek测试用例中。每个示例或教程都基于创建这样的新引用:
object SampleTest : Spek({
describe("a calculator") {
val calculator = SampleCalculator()
it("should return the result of adding the first number to the second number") {
val sum = calculator.sum(2, 4)
assertEquals(6, sum)
}
it("should return the result of subtracting the second number from the first number") {
val subtract = calculator.subtract(4, 2)
assertEquals(2, subtract)
}
}
})
总而言之,我不想做这样的事情:
val calculator = SampleCalculator()
我想实现这一目标
@Autowired
val calculator: SampleCalculator
但是我不能这样做,因为我不能将服务自动连接到局部变量中。任何解决方案吗?我是Kotlin和Spek的新手。
最佳答案
用lateinit尝试一下:
@Autowired
lateinit var calculator: SampleCalculator
关于spring - 如何在Spek测试中使用依赖注入(inject),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42064001/