問題タブ [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.

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

javascript - インターンのノックを読み込んでいます

テストでノック ( https://github.com/node-nock/nock ) を使用しようとしています。

私が書いvar nock = require('nock');ても、ロードされていないので見つかりません。

loaderOptionsにパッケージを追加しましたが、今は を入れvar nock = require('nock/index');なければなりません。require('nock')node_modules/nock/main

ライブラリは、nock が持ってくるいくつかのモジュールを内部的にロードしようとしますが、intern はError: Attempt to require unloaded module lib/recorder.

nock をパッケージに追加しました: { name: 'nock', location: 'node_modules/nock' }

どんな手掛かり?

ありがとう。

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

javascript - nock を使用してファイルへの要求と応答を記録し、それを使用して mocha 受け入れテストで再生する方法は?

テストが実施されていない typescript@2 プロジェクトを継承しました。

これは基本的に cli タスク ランナーであり、タスクはファイルを作成するために外部 API を複数回要求します。最初のフェイルセーフとして、受け入れテストをセットアップしたいと考えています。

したがって、外部 API への呼び出しをモックし、ローカル ファイルから応答を取得したいと考えています。どうすればそれを達成できますか?

この機能を提供しているように見える nock を調べましたが、どのように使用すればよいですか?

(私は最近、試練全体を経験したばかりなので、自分の質問に自分で答えるつもりなので、例を提供しません。)

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

node.js - Nock と Mocha がうまく一緒にプレイするにはどうすればよいですか?

テスト目的で、アプリケーションで一部の HTTP トラフィックをインターセプト/モックするために nock を使用しようとしています。私たちのアプリは私たちのサイトの別の 1 つに対して認証されます。ユーザーがそこにログインしている場合とログインしていない場合の動作をテストするには、nock で HTTP 200 (JSON データあり) と HTTP 401 (データなし) を模倣する必要があります (それぞれ)。 .

単独で実行すると両方とも正しく動作する 2 つのテストがありますが、テスト スイート全体を実行すると、そのうちの 1 つが常に失敗します。node.js 自体がネットワーク トラフィックを処理する方法を変更するため、nock は共有状態であることがわかります。これが競合状態の原因であると思いますが、同じリクエストに対して 2 つの異なる nock インターセプターを使用したことがある人は私だけではありません。 2つの異なるテストなので、何かが欠けていることがわかります。

これらのテストが互いに踏み合っている理由を理解するのを手伝ってくれる人はいますか?

私の質問は、Mocha と Nock を使用して同じ URL を再テストする方法に関連していますか? しかし、そこで提案されたことを実行しましたが、役に立ちませんでした。

私のテスト ファイル (繰り返しますが、個別に呼び出すとどちらも正常に動作しますが、同じテスト パスの一部として実行すると失敗します) は次のようになります。

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

reactjs - 反応コンポーネントメソッドを適切にテストする方法

私は仕事のためにしばらくの間 React で開発を行ってきましたが、最近、Istanbul を使用して、いくつかのアプリケーションを ~100% のテスト カバレッジにするように依頼されました。過去数日間で、このアプリケーションだけで 160 以上のテストを作成しましたが、コードの特定の部分をカバーできませんでした。AJAX 呼び出し、setTimeout コールバック、および別のコンポーネントが適切に動作する必要があるコンポーネント メソッドをカバーするのに最も苦労しています。私はいくつかのSOの質問を無駄に読んだことがありますが、それは私がこれに間違って取り組んでいるためだと思います。Enzyme、Chai アサーション、Mocha、Istanbul カバレッジ、スパイ用の sinon を使用していますが、sinon fakeServer が機能しないため、nock を検討していました。

問題のコンポーネントメソッドは次のとおりです。

}

そのコンポーネントのテストは次のとおりです。

SDK は、getJSON を使用して jQuery API 呼び出しを構築する単なるモジュールです。私のテストは関数呼び出しをカバーしていますが、ここに見られる .done コールバックはカバーしていません:ここに画像の説明を入力 私の質問は、.done を適切にテストするにはどうすればよいですか? コンポーネントメソッドを適切にテストする方法を説明する記事、チュートリアル、ビデオなどを誰かが持っていれば、本当に感謝しています!

2 番目の質問は、prop として子コンポーネントに渡されるメソッドをテストするにはどうすればよいですか? テスト範囲の要件により、そのメソッドをテストする必要がありますが、その唯一の目的は、onClick として使用される子コンポーネントに渡されることです。これは問題ありませんが、その onClick は、子コンポーネントでデータを返す別の AJAX 呼び出しに依存しています。私の最初の衝動は、酵素 .find を使用してその onClick を見つけてクリック イベントをシミュレートすることでしたが、AJAX 呼び出しがテスト環境でデータを返さなかったため、その onClick を持つ要素はそこにありません。ここまで読んでくれたなら、私はあなたに敬意を表します。そして、あなたが助けることができれば、私は感謝します!

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

node.js - nock: unsatisfaedMocks のリストを取得する方法はありますか?

次のようなコードが必要です。

出来ますか?