在使用Mockk编写Kotlin测试时,导入`io.mockk.every`需要哪些依赖项?

时间:2018-04-20 17:11:19

标签: mockk

我正在尝试仅基于testCompile group: 'io.mockk', name: 'mockk', version: '1.7.15'编写测试,但在下面的代码中:

import io.mockk.every
import io.mockk.any
import io.mockk.Runs
import io.mockk.impl.annotations.MockK
import io.mockk.junit5.MockKExtension

@ExtendWith(MockKExtension::class)
@TestInstance(TestInstance.Lifecycle.PER_CLASS)
internal class ConfigDistributorTest {
        @MockK
        lateinit var configService: ...

        @MockK
        lateinit var centralisedConfigRegisterService: ...

            val configDistributor =  ConfigDistributor(centralisedConfigRegisterService, configService)

            @Test
            fun shouldDistributeConfigToComponents(){
                every {
                    configService.readConfig(any())
                } just Runs
            }
        }

虽然RunsMockKMockKExtension已成功导入, everyany()不可用。 io.mockk.any是否是正确的import语句以及使用它们需要哪些其他依赖项?

1 个答案:

答案 0 :(得分:1)

首先,您需要导入everyimport io.mockk.every是正确的方法。 every any内部会自动导入,因此您无需这样做。其他的东西看起来很好

请使缓存无效,重新导入项目。可能你有一些IDE问题。