問題タブ [nock]
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.
javascript - JSテストの絶対パスでリクエストをモックする方法は?
あるコンポーネントで、xhr リクエストを「/api/somecall」に送信しました
MochaJS を使用してテスト目的で HTTP リクエストをモックしようとしています。
nock に入りましたが、最初のパラメーターはドメインです。複数のドメインで同じアプリを使用しているため、これを修正できません。
私は location.href で DOM をモックして、xhr がこのように Mocha のテスト セッションの開始時にヘルパーで特定のドメインに送信されるようにしました (このコードの一部を Web で見つけました)。
残念ながら、後でこれを試してもうまくいきません:
以前と同様に、すべてのテストでリクエストのタイムアウトが返されます。
どうすればそれを機能させることができますか?
node.js - コール関数へのノック応答の取得に関する問題
http呼び出しをインターセプトするためにnockを使い始めました。以下は、必要なモジュールをインポートした後、単体テスト ケースで使用しているコードです。
callFunction は、パラメーター「actionFunction」、「mockData」を別のクラスに送信します。このクラスでは、actionFucntion が mockData を受け取り、スーパーエージェント モジュールを使用して ajax リクエストを作成します。
問題は、nock が http 呼び出しをインターセプトできたにもかかわらず、nock モック応答 ({id:10}) がコールバック関数に到達していないことです。このレスポンスをコールバック関数で表示したい
これを行う方法はありますか?
node.js - Nock は Redux テストで API 呼び出しをインターセプトしていません
Redux アプリで API 呼び出しをテストしようとしています。コードは、redux ドキュメントのAsync Action Creatorsセクションで概説されているパターンにほぼ従っています。
http://redux.js.org/docs/recipes/WritingTests.html
その要点は、redux-mock-storeを使用して、トリガーされたアクションを記録およびアサートすることです。
これは、nock を使用して API 呼び出しをモックするテスト全体です。
しかし、テストの実行時に実際の lastFm api が呼び出されるようです...偽のノック応答ではなく、実際のデータが lastFm から返されます。
これはアクション クリエータ自体です。
expectedActionsライブの lastFM 応答が、オブジェクトごとに期待している応答と同じではないため、アサーションは失敗します。
nock を変数に割り当ててログアウトしようとしました。ログには次のように表示されます。
Nock は URL にポート 80 を追加しているようですが、これが原因で実際の API がモックされていないかどうかは不明です。
ここで何が問題なのですか?
redux - Redux / Mocha / Nock でのサーバー呼び出しのテスト
私はテストに慣れていないので、これが私がテストする「想定」されているものであるかどうかさえわかりませんが、次のようになります。
非同期アクション作成者のテストを作成する方法については、 https://github.com/reactjs/redux/blob/master/docs/recipes/WritingTests.mdの例に従っています。ここに私がテストしているコードがあります:
私のテスト フレームワークは、nock と configureMockStore を備えた mocha/chai です。/api/representative への呼び出しを nock でモックしたいのですが、方法がわかりません。
node.js - nock 'no match' イベント コールバック引数
nock が「一致しない」イベントを発行すると、1 つの引数で応答する場合もあれば、3 つの引数で応答する場合もあります。それらが何であるかわかりません。各引数のキーは次のとおりです。
コールバックが 1 つの引数で呼び出された場合:
qs、ヘッダー、パス、プロトコル、メソッド、ホスト名、ポート、socketTimeout、エージェント、clientName、transportName、maxRedirects、proto、host
コールバックが 3 つの引数で呼び出された場合:
ドメイン、_events、_maxListeners、出力、outputEncodings、書き込み可能、_last、chunkedEncoding、shouldKeepAlive、useChunkedEncodingByDefault、sendDate、_headerSent、_header、_hasBody、_trailer、終了、_hangupClose、ソケット、接続、_headers、_headerNames、_removedHeader、パス、書き込み、終了、中止、オン、1 回、メトリック、timeoutCb、パイプ
dnslookup、socketTimeout、再試行、マークダウンしきい値、ポート、プロトコル、ホスト名、ベースパス、トランスポート、メソッド、インストルメント、ヘッダー、SVC_CHANNEL_STATUS、デバッグ、パス、checkServerIdentity、moduleRef、clientId、clientName、qs、agent、transportName、maxRedirects、proto、ホスト、getHeader
'' (空文字列)
これは、キー リストを生成するために使用したコードです。
node.js - nock スコープの pendingMocks をリセットする
nock スコープに対して複数のアサーションを実行し、beforeEach でリクエストをモックしようとしていますが、scope.pendingMocks()すべてをクリーンアップした後でもリクエストが表示されます。
複数のリクエストを使用して同じホストにモックを設定し、各テストでリクエストを新たにアサートする最良の方法は何ですか?