問題タブ [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.
android - Moshi Retrofit エラー: 「文字列が必要ですが、BEGIN_OBJECT でした」
Retrofit インスタンスを次のように構築しました。
次に、次のようにMockWebServerインスタンスを呼び出しています。
jsonStrは次のように構築されます。
ただし、コードはこの時点でクラッシュします。
例外は次のとおりです。
com.squareup.moshi.JsonDataException: 文字列が必要でしたが、パス $ で BEGIN_OBJECT でした
私は何を間違えましたか?
java - OkHttpClient MockWebSever を使用して image/byte[] を返すにはどうすればよいですか?
私は、REST サービスから PNG 画像をダウンロードし、それを に変換して、Bitmap
このライブラリを使用してアプリに返す必要がある Android ライブラリ プロジェクトに取り組んでいます。したがって、png 画像のバイトを返す REST Web サービスがあります。Retrofit
withを使用してこのサービスを呼び出していますrxJava
。以下のコードでは、Observableの aから aへaccessRemoteComm.getImage()
の読み込みと変換を行います。画像はアプリケーションに正常に読み込まれます。その方法を単体テストしたいのですが、そもそも画像を配信するのに苦労しています。は、次のように常に呼び出されます。ResponseBody
Bitmap
.map
MockWebServer
OnError
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でBuffer
as bodyの使用法を示すリソースが見つかりません。そして、これは、助けがあればありがたい部分です。これを正しく設定するにはどうすればよいですか?
ところで。これをテストする方法について他に提案がある場合は、お知らせください。
ありがとうございました!
android - Android でのサーバー結果のモッキング (Wiremock、MockWebServer など)
サーバー応答の記録に関する完全かつ最近のチュートリアルまたはプロジェクトを持っている人はいますか?
私はすでにそこにたくさん見てきました
junit - Robolectric で MockWebServer を使用する
MockWebServer と Robolectric を使用して、いくつかの API 呼び出しを単体テストしようとしています。
私のテストクラスには次の注釈が付けられています。
ただし、Retrofit インスタンスをビルドしようとすると、次の例外が発生します。
改造インスタンスを構築するために使用しているコード:
を呼び出すと、上記の例外が返されます.build()
。
この問題を解決するにはどうすればよいですか?
junit - MockWebServer で POST 本文の内容を確認するにはどうすればよいですか?
OkHttp
Squares sを使用する単体テストがいくつかありますMockWebServer
。テストはすべて正常に実行され、すべてが非常にうまく機能します。これまでできなかったのは、POST リクエストの内容を確認することです。
なぜ私はそれをしたいのですか?
私が開発しているREST Apiには、データオブジェクトをPOSTリクエスト本文で送信する必要があるメソッドがいくつかあり、他のメソッドではオブジェクトをFormUrlEncoded
データフィールドとして送信する必要があります。Retrofit
したがって、インターフェイスが正しく設定されていることを確認したいと思います。仕様に。
次の単体テストはパスしますが、最初の単体テストでは本体内でデータが正しく送信されません。
メソッドがあることは知ってMockWebServer
いますがtakeRequest()
、そのリクエスト本文から実際のフィールドとデータを取得することに固執しています。
ご協力ありがとうございました!
mocking - URLを変更できないMockwebserver?
Androidのテストにmockwebserverを使用しています。次のようにして、レトロフィットを使用するネットワーク サービスをモックすることができます。
ただし、ベース URL https://api.layer.com/apps/を持つ Atlas-Layer などの他の SDK によって行われた Web リクエストのリクエストをモックすることはできません。
私は次のことをしましたが、リクエスト数はまだ0です。
android - MockWebServer の使用中に Dagger 2.0 で複数のエンドポイントをサポートする方法
Android プロジェクトでは、次の Dagger モジュールに示すように、Retrofit 2.1.0 と OkHttp 3.4.1 を Dagger 2.6 で構成しました。@Named
修飾子を使用して複数のバックエンドをサポートすることを目指しています。
テストにMockWebServerを使用したい。ただし、複数のバックエンドを同時にサポートしながら、MockWebServer の URL を渡す方法がわかりません。
timeout - MockWebServer の応答遅延 - タイムアウトのテスト
Retrofit/OkHttp で送信されたテスト リクエストに応答する MockWebServer を使用して、HTTP タイムアウト シナリオをテストしようとしています。(この質問は数年前に尋ねられましたが、当時は MockWebServer のバグに関するものでした。また、API はその後かなり変更されたため、この質問を再投稿することは正当化されると思います。)
関連する方法がいくつかあるようですが、明確な例でこの問題を解決していただければ幸いです。
.delayBody
と.throttleBody
また、これらの方法は両方とも本体を遅延/抑制しているように見えます-応答ヘッダーのタイムアウトを設定することはできませんか? つまり、「応答を送信する前に、次の着信要求から X 秒待機する」という行に沿ったものです。