問題タブ [vcr]
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.
ruby-on-rails - Rspec メタデータ: vcr はタグ付けされた例に対してのみ起動する必要がありますが、代わりにすべての例で機能しますか?
簡単なセットアップ:
でタグ付けされていない例は影響を受けないと予想し:vcr
ていますが、そうではないようです。「VCR は要求について認識していません...」というようなエラーが表示されます。
私は何が欠けていますか?
ruby-on-rails - このサードパーティ API 統合を rspec でテストするにはどうすればよいですか?
私のプロジェクトは、サードパーティの API を拡張する Rails アプリです。多くのリクエストは、サードパーティの API 呼び出しに依存しています。これらのケースをrspecでテストするにはどうすればよいですか? VCR を使用して、実際にサード パーティをヒットする必要がありますか (その後、将来のリクエストをモックします)? または、ペイロードを手動でフィクスチャにダウンロードし、webmock でリクエストをスタブして、oauth プロセスをバイパスする方法を見つける必要がありますか? より良い解決策はありますか?
OAuth を使用していますが、omniauth は使用していないことに注意してください。
API によって、一度に取得できるレコード数が N 個に制限されることがあるため、それらをページ分割する必要があります。必要なデータを取得するためだけに 25 のリクエストを行う場合もありますが、これは主に同期レーキ タスク用です。
ruby - VCR が URI をスキップするようにします。
https://api.github.com/repos/lgs/elasticrepoのような同様のパスをモックしながら、実際の外部 API を呼び出すhttps://api.github.com/users/lapaty/starredだけをスキップするように VCR をニートします。
今まで、成功せずに次のことを試しました:
と
ruby-on-rails - rspec で vcr とガード ジャスミンを使用する際の問題
rspec を使用する Rails プロジェクトでは、ガード ジャスミンが jspecs をしばらく実行していました。しかし、いくつかの通常の仕様に vcr を含めたところ、ジャスミンが壊れました。
stub_request
エラーがさまざまな場所で示唆するように電話をかけてみましたが、何も得られませんでした。allow_http_connections_when_no_cassette = true
また、 and を使用して vcr を構成しようとしignore_localhost = true
ましたが、効果はありませんでした。これを修正する方法についてのアイデアはありますか?
ありがとう!
編集:
問題は、私が持っていたvcr構成ファイルがジャスミンではなくrspecによってのみロードされたため、もちろん、私が試した2つのオプションが機能しないことでした。修正は、jasmine rake タスクで vcr 構成ファイルを要求するだけでした。
ruby-on-rails - VCR の allow_playback_repeat オプションで古いカセットを再利用できない
次のように VCR を実装するテストがあります。
テストを実行すると、VCR はカセットを作成し、テストは rspec でパスします。ただし、テストを再実行すると、次のエラーで失敗します。
初期テストの VCR ログ情報 (rspec テストに合格)
2 番目のテストからの VCR ログ情報 (rspec テストは失敗)
allow_playback_repeats が機能しないのはなぜですか?
ruby - HTML パーサーのテスト
Rubyで書かれたHTMLパーサーのいくつかのテストを実装しようとしており、解析にNokogiriを使用しています.httpリクエストからの応答を取得します。
現在、テストはフィクスチャ (保存されている html ファイル) を使用しています。しかし、問題は、パーサーが正しく解析しないように、時々実際の応答が変化する (要素の ID またはクラスが変化する) ことです。ただし、静的フィクスチャを使用しているため、テストは引き続きパスします。
このような状況に対処するためのアプローチをお勧めできますか?
ruby - VCR 自動再記録が最初のインターバル後に再記録しない
ビデオデッキのカセットの自動再録画に問題があります
これは私の設定です:
そして呼び出し:
最初の要求では、カセットは正しく記録されますが、初めて間隔時間が経過すると、カセットは再記録されず、新しい要求データがファイルに追加され、間隔は完全に無視されます。
rspec - Rspec VCR とカスタム レスポンス
google.com にリクエストがあるとします。カセットを録音して使用できます。しかし、google.com が 500 エラー コードを返したときにスイートをテストする必要がある状況を想像してみてください。どうすればそれができますか?カセットファイルを手動で変更することも考えましたが、すべてのカセットを再録音する必要がある場合は、このカセットも変更する必要があり、そのようなケースがたくさんあるため、これは私のニーズには合いません
または、そうすることを可能にする vcr の代替手段はありますか?