問題タブ [sinon-chai]
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.
angularjs - sinon js単体テストで.thenの後の行をテストできません
sinon.js
、mocha
、の新生児chai
です。上記のライブラリを使用して単体テストを作成しようとしています。Project Front-End はAngularJS
の組み合わせで入っていECMASCRIPT6
ます。
Sinonjs
私は何も理解していないのドキュメントから!それは複雑です。
これが私のJSスニペットです:
そして、ここに私のUNIT-TESTスニペットがあります:
しかし、残念ながら立ち往生しています。私のコードは.then
行の後に実行されません。
エラーがスローされるはずです。私は と をスパイしていないuserAlertsService
からnavigationService
です。
何が間違っているのか教えてください
reactjs - 酵素で span タグのクリックをシミュレートする
コンポーネントにスパンタグがあり、酵素を使用してクリックする必要があります
これが私のテストです
クリックするものを見つけるのに混乱しています。通常、いくつかの div クラスまたはその他の検索可能なタグがあります。
node.js - Express js単体テストでsinon jsを使用する方法
こんにちは、express js コードで単体テストを行いたいのですが、データをモックしたいので、複数の Web サイトやブログを検索した後、このライブラリを見つけましたが、このライブラリをモックやデータに使用する方法がわかりません。私のテストコードは
現在、このコードはデータベースからデータを取得していますが、モック データを使用した単体テストが必要です。どうすればこれを達成できますか?
__編集__
Express js routes ファイル内に記述されたコードをテストしたいと考えています。このルートは、このようにapp.jsファイル内で呼び出しています
現在、顧客のルートファイルに含まれるコードは次のとおりです。
モックデータを使って「get」メソッドのレスポンスをテストしたい
node.js - chai と sinon を使用してメソッド内の promise をスタブ化する
テスト対象の関数は、おおよそ次のようになります。
Chai と Sinon を使用してこれをテストしようとしています。
さまざまなガイドに従ってみましたが、現在の呪文は次のようになります。
externalService.post
正しくスタブアウトできません。どんな助けでも大歓迎です。
私は Chai と Sinon にまったく慣れていないので、ばかげたことをしていることを十分に期待してください。
javascript - 予期エラーが表示されるのはなぜですか?
ライブラリの仕様を作成して、値が定期的に発行されるようにしました。私は sinonjs を使用しており、スパイとしてコールバックを作成しました。私は sinonjs で偽のタイマーを使用して、10 秒の余分な 2 つの間隔をシミュレートしています。ただし、テストが tick メソッドの最初の使用に到達すると、エラーが発生します。以下のエラーが発生します
以下は私のテストのコードです
これは私の生産コードです
なぜこのエラーが発生するのか、誰にも分かりますか?
node.js - Promise を実装するためにリファクタリングした後、Sinon + Chai を使用したテストが失敗する
このアプリケーションでは多くのコールバックが発生し、「コールバック地獄」の良い例になりました。200 行または 300 行で、それぞれ 10、15 のネストされたコールバックを持つメソッド。
次に、良い習慣として、これらのコールバックのほとんどを分離し、then という名前を付けて、Bluebird の promise を使用して、より組織化された「then-chain」を作成しました。
私が実装したすべてのテストとメソッドは互いに非常に似ているため、同じメソッドの 2 つのテスト ケースが失敗した理由は正確にはわかりません。
next
関数とDAOメソッド(Mongoクエリを作成する)が呼び出されているかどうかを確認するためにSinonを使用していました。
その後、このメソッドで変更されたのは、そのメソッドの最初に実行されていたロジックを promise 内に転送したことであることに気付きました。
true
テストが promise の完了を待たずに間違って返されたため、「next」への呼び出しが評価されませんでした。
これは、悪い動作を示したテストの一部です。
コントローラーのメソッドを変更しましたが、基本的にはプロミスの中にロジックがありました。出すことで問題は解決します。
javascript - Sinon: 関数呼び出しと var 変更の順序をテストする
私たちが持っているとき
testFunction が呼び出される前に testVar が変更されたかどうかをテストする方法はありますか?
編集:ないようです。しかし!変数がオブジェクト プロパティの場合、同様のことができます。以下の私自身の答えを確認してください。