为什么 MockWebServer 初始化不起作用?

问题描述

我尝试在仪器测试中使用 MockWebServer 模拟我的改造调用。出于某种原因,我什至无法初始化我的 MockWebServer 实例并得到以下异常:

E/TestRunner: java.lang.NoClassDefFoundError: Failed resolution of: Lokhttp3/internal/concurrent/TaskRunner$RealBackend;

这是我的测试代码

class HttpAdapterandroidTest {

    private val testContext = InstrumentationRegistry.getInstrumentation().context

    private val mockWebServer: MockWebServer = MockWebServer()
        .apply {
            url(TEST_URL_PATH)
        }
    private val retrofit: Retrofit = Retrofit.Builder()
        .baseUrl(HttpUrl.get(TEST_URL_PATH))
        .build()
    private val myHttpApi = retrofit.create(MyHttpApi::class.java)
    private lateinit var myHttpAdapter: MyHttpAdapter

    @Before
    fun setUp() {
        mockWebServer.start()
        // some more setup code ...
    }

    @After
    fun tearDown() {
        mockWebServer.shutdown()
    }

    // some tests ...

    companion object {
        private const val TEST_URL_PATH = "http://test.com/api/"
    }

}

此异常的原因可能是什么?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)