问题标签 [mockwebserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
791 浏览

android - MockWebServer 不做回调

我正在尝试使用 MockWebService 测试我们的 Android 应用程序。发送到服务器的请求被正确接收,但是响应没有返回给客户端。这只发生在异步请求时,直接使用httpclient时它工作正常......

我们做测试的代码也很简单:

任何想法或帮助感谢!谢谢!

0 投票
3 回答
8918 浏览

android - Moshi 改造错误:“应为字符串,但为 BEGIN_OBJECT”

我像这样构建了我的改造实例:

然后我像这样调用我的MockWebServer实例:

jsonStr是这样构建的

但是,此时代码崩溃:

例外是:

com.squareup.moshi.JsonDataException:应为字符串,但路径 $ 处为 BEGIN_OBJECT

我做错了什么?

0 投票
2 回答
2043 浏览

java - 如何使用 OkHttpClient MockWebSever 返回图像/字节 []?

我正在开发一个 android 库项目,我需要从 REST 服务下载 PNG 图像,将其转换为 aBitmap并使用该库将其返回给应用程序。因此,我们有一个 REST Web 服务,它返回 png 图像的字节。我们使用Retrofitwith调用此服务rxJava。在我下面的代码中,对 Observable 进行了从内部到内部accessRemoteComm.getImage()的加载和转换。图像在应用程序中加载良好。我现在想对该方法进行单元测试,但我一开始就很难交付图像。不断被调用:ResponseBodyBitmap.mapMockWebServerOnError

java.lang.RuntimeException: Method decodeStream in android.graphics.BitmapFactory not mocked. See http://g.co/androidstudio/not-mocked for details.

这是我到目前为止所拥有的:

改造界面:

getImage() 方法:

我的测试方法:

我很确定,我没有bufferedSource正确设置。但是我在 SO 或网络上找不到任何显示MockResponsewith a Bufferas body 用法的资源。这是部分,任何帮助表示赞赏。如何正确设置?

顺便提一句。如果您对如何测试有任何其他建议,请告诉我!

谢谢!

0 投票
1 回答
926 浏览

android - Mocking server results on Android (Wiremock, MockWebServer etc)

Does anyone have a full and recent tutorial or project on recording server responses- get and post and headers as needed AND Playing them back with wiremock and/or mockwebserver?

I've looked at many out there already

0 投票
2 回答
13106 浏览

java - OkHttp MockWebServer 重新启动时无法接受连接

我正在使用OkHttp MockWebServer来模拟我的服务器响应以进行单元测试。

它适用于第一次测试,但在第二次测试中,我的客户失败了:

无法连接到 localhost/0:0:0:0:0:0:0:1:63631

即使第二次测试与第一次完全相同,也会发生这种情况。
这就是我正在做的事情:

第一个测试按原样通过,但第二个测试失败并显示我上面写的消息。
控制台中的输出是:

Waiter对象来自concurrentunit lib

知道为什么会这样吗?

0 投票
4 回答
1682 浏览

junit - 将 MockWebServer 与 Robolectric 一起使用

我正在尝试使用 MockWebServer 和 Robolectric 对一些 API 调用进行单元测试。

我的测试类注释为:

但是,当尝试构建 Retrofit 实例时,出现以下异常:

我用来构建改造实例的代码:

调用时返回上述异常.build()

我该如何解决这个问题?

0 投票
1 回答
9965 浏览

junit - 如何使用 MockWebServer 验证 POST 正文的内容?

我有几个使用 SquaresOkHttp的单元测试MockWebServer。测试运行良好,一切运行良好。到目前为止我不能做的一件事是验证 POST 请求的内容。

我为什么要这样做?
我正在开发的 REST Api 有一些方法,需要在 POST 请求正文中发送数据对象,其他方法需要将对象作为FormUrlEncoded数据字段发送。所以我想确保Retrofit接口设置正确。到规范。

以下单元测试将通过,但第一个单元测试在正文中发送数据不正确:

我知道MockWebServertakeRequest()方法,但我坚持从该请求正文中获取实际字段和数据。

感谢您的帮助!

0 投票
0 回答
983 浏览

mocking - 无法更改 url 的 Mockwebserver?

我正在使用 mockwebserver 进行 android 测试。我可以通过这样做来模拟使用改造的网络服务

但是,我无法模拟其他 SDK 发出的 Web 请求请求,例如具有基本 URL https://api.layer.com/apps/的 Atlas-Layer 。

我做了以下但得到的请求计数仍然为 0。

0 投票
1 回答
669 浏览

android - 如何在使用 MockWebServer 时使用 Dagger 2.0 支持多个端点

对于一个 Android 项目,我使用 Dagger 2.6 配置了 Retrofit 2.1.0 和 OkHttp 3.4.1,如下面的 Dagger 模块所示。我的目标是使用@Named限定符支持多个后端。

我想使用MockWebServer进行测试。但是,我不知道如何在支持多个后端的同时传入 MockWebServer 的 URL:

0 投票
1 回答
7788 浏览

timeout - MockWebServer response delay - testing timeouts

I'm trying to test HTTP timeout scenarios using a MockWebServer which answers my test requests sent with Retrofit/OkHttp. (This question was asked before some years ago, but at the time concerned a bug in the MockWebServer. Also, the API has since changed a fair bit, so I think reposting this question is warranted.)

There seem to be several related methods, but I'd appreciate a solution to this issue with a clear example: I'm unsure about the difference between..

  • .delayBody and
  • .throttleBody

Also, both of these methods seem to only delay/throttle the body - is it not possible to set a timeout for the response header? I.e. something along the lines of "wait X seconds after the next incoming request before you send out any response".