MockWebServer Android测试在CI上失败

MockWebServer Android测试在CI上失败,android,unit-testing,bitrise,mockwebserver,Android,Unit Testing,Bitrise,Mockwebserver,我用MockWebServer编写了一个单元测试,以捕获改型引发的ConnectionExceptions,并将它们转换为域级错误 @Test fun `check that factory returns no internet error for ConnectException when no internet`() { val response = MockResponse() .setSocketPolicy(SocketPolicy.DISCONNEC

我用MockWebServer编写了一个单元测试,以捕获改型引发的ConnectionExceptions,并将它们转换为域级错误

    @Test
fun `check that factory returns no internet error for ConnectException when no internet`() {
    val response = MockResponse()
        .setSocketPolicy(SocketPolicy.DISCONNECT_AFTER_REQUEST)

    whenever(connectionChecker.isConnected())
        .thenReturn(false)

    mockWebServer.enqueue(response)

    val result = apiService.getAllBreads()
        .subscribeOn(schedulerProvider.io())
        .observeOn(schedulerProvider.ui())
        .test()

    result.assertError(PawzNoInternetError::class.java)

}
此测试在本地运行良好,但在Bitrise上失败

测试中的代码是一个自定义的改装CallAdapter.Factory,在本地调试代码时,抛出的错误实际上是一个ConnectionException,因此测试通过。 在Bitrise上运行测试时,我得到:

java.io.IOException: unexpected end of stream on Connection
这会导致测试失败


有人知道我如何解决这个问题吗?

我在Azure中遇到了同样的问题:(通过使用和配置MockWebServer以使用端口8080修复了我的问题,希望有帮助)我在Azure中遇到了同样的问题:(通过使用和配置MockWebServer以使用端口8080修复了我的问题,希望有帮助