首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MockWebServer未完成

MockWebServer未完成
EN

Stack Overflow用户
提问于 2018-07-02 10:40:34
回答 1查看 1.8K关注 0票数 0

我使用MockWebServer就像下面的代码一样。但MockWebServer没有完成。测试正在无止境地进行。我错过了什么?

结果:Jul 02, 2018 7:30:59 PM okhttp3.mockwebserver.MockWebServer$2 execute 정보: MockWebServer[49728] starting to accept connections

代码语言:javascript
复制
interface Webservice {
    @GET("users/{user}/missions")
    fun getMissions(@Path("user") user: String): Call<Missions>
}

class MockWebTest {

    private lateinit var webservice: Webservice

    @Before
    fun setUp() {
        val baseUrl = MyURL.API_DOMAIN
        val okHttpClient = OkHttpClient.Builder()
                .connectTimeout(2, TimeUnit.SECONDS)
                .readTimeout(2, TimeUnit.SECONDS)
                .writeTimeout(2, TimeUnit.SECONDS)
                .build()
        val retrofit = Retrofit.Builder()
                .baseUrl(baseUrl)
                .client(okHttpClient)
                .addConverterFactory(GsonConverterFactory.create())
                .build()

        webservice = retrofit.create(Webservice::class.java)
    }

    @Test
    fun test3() {
        val server = MockWebServer()
        server.start()

        val missionsJson = """
            {
                "message": "walk"
            }
        """.trimIndent()

        server.enqueue(MockResponse().setBody(missionsJson).throttleBody(1024, 1, TimeUnit.SECONDS))


        val call = webservice.getMissions("1")
        val entity = call.execute().body()!!

        assertEquals("walk", entity.message)

        val request1 = server.takeRequest()
        assertEquals("GET", request.method)
        assertEquals("/users/1/missions", request.path)

        server.shutdown()
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-03 02:24:12

我检查了这个回购GithubBrowserSample谷歌样本。改造baseUrl需要由MockWebServer#url(String)设置

就像这样,不是我的网址。

代码语言:javascript
复制
val retrofit = Retrofit.Builder()
        .baseUrl(server.url("/"))
        .client(okHttpClient)
        .addConverterFactory(GsonConverterFactory.create())
        .build()
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51134284

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档