問題タブ [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 投票する
3 に答える
8918 参照

android - Moshi Retrofit エラー: 「文字列が必要ですが、BEGIN_OBJECT でした」

Retrofit インスタンスを次のように構築しました。

次に、次のようにMockWebServerインスタンスを呼び出しています。

jsonStrはのように構築されます。

ただし、コードはこの時点でクラッシュします。

例外は次のとおりです。

com.squareup.moshi.JsonDataException: 文字列が必要でしたが、パス $ で BEGIN_OBJECT でした

私は何を間違えましたか?

0 投票する
2 に答える
2043 参照

java - OkHttpClient MockWebSever を使用して image/byte[] を返すにはどうすればよいですか?

私は、REST サービスから PNG 画像をダウンロードし、それを に変換して、Bitmapこのライブラリを使用してアプリに返す必要がある Android ライブラリ プロジェクトに取り組んでいます。したがって、png 画像のバイトを返す REST Web サービスがあります。Retrofitwithを使用してこのサービスを呼び出していますrxJava。以下のコードでは、Observableの aから aへ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正しくセットアップしていないことは確かです。MockResponseしかし、SO や WebでBufferas bodyの使用法を示すリソースが見つかりません。そして、これは、助けがあればありがたい部分です。これを正しく設定するにはどうすればよいですか?

ところで。これをテストする方法について他に提案がある場合は、お知らせください。

ありがとうございました!

0 投票する
1 に答える
926 参照

android - Android でのサーバー結果のモッキング (Wiremock、MockWebServer など)

サーバー応答の記録に関する完全かつ最近のチュートリアルまたはプロジェクトを持っている人はいますか?

私はすでにそこにたくさん見てきました

0 投票する
4 に答える
1682 参照

junit - Robolectric で MockWebServer を使用する

MockWebServer と Robolectric を使用して、いくつかの API 呼び出しを単体テストしようとしています。

私のテストクラスには次の注釈が付けられています。

ただし、Retrofit インスタンスをビルドしようとすると、次の例外が発生します。

改造インスタンスを構築するために使用しているコード:

を呼び出すと、上記の例外が返されます.build()

この問題を解決するにはどうすればよいですか?

0 投票する
1 に答える
9965 参照

junit - MockWebServer で POST 本文の内容を確認するにはどうすればよいですか?

OkHttpSquares sを使用する単体テストがいくつかありますMockWebServer。テストはすべて正常に実行され、すべてが非常にうまく機能します。これまでできなかったのは、POST リクエストの内容を確認することです。

なぜ私はそれをしたいのですか?
私が開発しているREST Apiには、データオブジェクトをPOSTリクエスト本文で送信する必要があるメソッドがいくつかあり、他のメソッドではオブジェクトをFormUrlEncodedデータフィールドとして送信する必要があります。Retrofitしたがって、インターフェイスが正しく設定されていることを確認したいと思います。仕様に。

次の単体テストはパスしますが、最初の単体テストでは本体内でデータが正しく送信されません。

メソッドがあることは知ってMockWebServerいますがtakeRequest()、そのリクエスト本文から実際のフィールドとデータを取得することに固執しています。

ご協力ありがとうございました!

0 投票する
0 に答える
983 参照

mocking - URLを変更できないMockwebserver?

Androidのテストにmockwebserverを使用しています。次のようにして、レトロフィットを使用するネットワーク サービスをモックすることができます。

ただし、ベース URL https://api.layer.com/apps/を持つ Atlas-Layer などの他の SDK によって行われた Web リクエストのリクエストをモックすることはできません。

私は次のことをしましたが、リクエスト数はまだ0です。

0 投票する
1 に答える
669 参照

android - MockWebServer の使用中に Dagger 2.0 で複数のエンドポイントをサポートする方法

Android プロジェクトでは、次の Dagger モジュールに示すように、Retrofit 2.1.0 と OkHttp 3.4.1 を Dagger 2.6 で構成しました。@Named修飾子を使用して複数のバックエンドをサポートすることを目指しています。

テストにMockWebServerを使用したい。ただし、複数のバックエンドを同時にサポートしながら、MockWebServer の URL を渡す方法がわかりません。

0 投票する
1 に答える
7788 参照

timeout - MockWebServer の応答遅延 - タイムアウトのテスト

Retrofit/OkHttp で送信されたテスト リクエストに応答する MockWebServer を使用して、HTTP タイムアウト シナリオをテストしようとしています。(この質問は数年前に尋ねられましたが、当時は MockWebServer のバグに関するものでした。また、API はその後かなり変更されたため、この質問を再投稿することは正当化されると思います。)

関連する方法がいくつかあるようですが、明確な例でこの問題を解決していただければ幸いです。

  • .delayBody
  • .throttleBody

また、これらの方法は両方とも本体を遅延/抑制しているように見えます-応答ヘッダーのタイムアウトを設定することはできませんか? つまり、「応答を送信する前に、次の着信要求から X 秒待機する」という行に沿ったものです。