java.io.IOException:http://localhost:33339/ 上的流意外结束

java.io.IOException: unexpected end of stream on http://localhost:33339/

我正在使用改造和 okhttp3.mockwebserver.MockWebServer 进行 Android 测试。 运行 测试时出现此错误。

Gradle:

 androidTestImplementation "com.squareup.okhttp3:mockwebserver:3.14.9"
def retrofit_version = "2.9.0"
    implementation "com.squareup.retrofit2:converter-gson:$retrofit_version"
    implementation "com.squareup.retrofit2:retrofit:$retrofit_version"
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'

Android 测试 class 有:

mockServer = MockWebServer()
mockServer.start()

//In some other class
Retrofit.Builder()
            .baseUrl(mockServer.url("/").toString())
            .addConverterFactory(GsonConverterFactory.create(GsonBuilder().create()))
            .build()


mockServer.enqueue(
        MockResponse()
            .setResponseCode(200)
            .setBody(getJson(fileName)))

我不知道缺少什么尝试添加 header 但仍然出现相同的错误。 请帮忙。

更正了在显示进度条和错误消失之前调用 mock api 的顺序。