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

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

reactjs - Sinon.stub がテストで呼び出されましたが、ステートメントが呼び出されることを期待して失敗しました

テストしようとしている onClick メソッドが呼び出されるステートレスな反応コンポーネントがあります。

私がやっている方法は、本番環境で呼び出されるメソッドを指すデフォルト値でプロップを設定することです。これにより、sinon.stub() を介してテストでクリック イベントをテストできます。

だから、これはすべて順調です。スタブが呼び出されています。.returns(console.log("called"));これは、スタブに追加してコンソールに表示されるのでわかります。

しかし、 になるとexpect(onClickStub).to.have.been.called、私のテストは呼び出されていないと言って失敗します。

私のコードにはステートレス コンポーネントが含まれているため、テストのために簡単な TestWrapper クラスでラップしています。コンテキストがどのように機能しているかはわかりませんが、テストに完全に必要だとは思いません。

ここにすべてがあります:

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

angularjs - sinon、mocha、chai による角度テスト

モカ、シノン、チャイでAngularアプリをテストしたい。特にサブミット機能に興味があります。この関数をテストするために LoginResoure のモックまたはスタブを作成する方法。

ありがとう!

編集:以前は、次の方法でジャスミンを使用していました:

または @resource をモックしたい場合

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

karma-runner - モカ、チャイ、チャイ・アズ・プロミス、チャイ・シノンのカルマ

Mocha、Chai、Sinon、Chai-as-promised、および chai-sinon を使用して Karma テスト スイートを実行しようとしています。

現在、モカ、チャイ、シノンのフレームワークのみでセットアップされています。

ここで、いくつかのカルマ プラグイン、つまり karma-chai-sinon と karma-chai-as-promised を追加してみました。次に、上記を次のように変更します

私の単体テストでは

しかし、これにより「TypeError: '[object Object]' is not a function...」というエラーが表示されます。

期待どおりに動作します。

カルマ プラグインのコードを調べてみましたが、意味がわかりません。カルマ プラグインのどこかに 'chai.use(chaiAsPromised)' と 'chai.use(sinonChai)' があると思っていましたが、そうではありません。 . Karma の Web サイトでは、プラグイン/フレームワークが内部でどのように機能するかについても説明していません。

これを設定するのを手伝ってくれる人はいますか?

前もって感謝します。

0 投票する
3 に答える
15228 参照

node.js - nodejsでsinon、mocha、chaiを使用して特定の引数で関数が呼び出されることを期待するにはどうすればよいですか?

渡す引数で が呼び出されることを確認しようとして問題が発生しQ.ninvokeました。Sinon、Mocha、Chai でテストするのは初めてです。オンラインで見つけたすべてを 2 日間試しましたが、まだテスト パスを取得できません。私は何を間違っていますか?

これはテスト中の私のコードです。

これが私のテストです。

これは私が得ているエラーです。

1) UploadCommand .initialize ファイルが正常に読み取られた場合 Q.ninvoke は引数で呼び出される必要があります: AssertionError: expected { Spy } to have been called with [ Array(3) ]

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

javascript - Angular js でコントローラーのテスト ケースを作成する方法

最近、アプリケーションのテスト ケースの作成を開始しました。コントローラーのテスト ケースを作成する際に助けが必要です。テストケースの作成には、Mocha、chai、および Snion ライブラリを使用しています。

これは、コントローラー コードを含む plunker リンクです。このコントローラーのテスト ケースの書き方を教えてくれる人はいますか? これを踏まえて残りを実装していきます。このコントローラーで最初のプッシュが必要です。

http://plnkr.co/edit/oginuqO0afxnWbVMos0f?p=info

コードは次のとおりです。

どんな助けでも本当に感謝しています。

事前に感謝します。同じことについて質問がある場合はお知らせください。

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

angularjs - Angular で sinon スタブを作成する場合、未定義になることはオブジェクト エラーではありません

次のテストコードがあります。

次のように設定されたコントローラーを挿入しています。

テストを実行すると、次のエラーが発生します。

PhantomJS 1.9.8 (Mac OS X 0.0.0) imagesCtrl "before each" フック: "should exist" の workFn FAILED TypeError: 'undefined' is not an object ('$q.resolve' を評価中) at..src/js /controllers/imageCtrl-test.js:18;

このエラーは、行 this.loadPics = sinon.stub().returns($q.resolve({.....})); を参照しています。

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

angularjs - angularの$ httpをsinonでモックするにはどうすればよいですか?

Mocha テストで、sinon を使用して angular の $http の簡単なモックを作成しようとしています。

しかし、私のスパイは、私が何をしようとしても結果を出しません。

searchResource.typeAhead は、テスト中の私の関数です。引数に基づいて $http を呼び出します。リクエストが正しいことを確認したいと思います。

searchResource.typeAhead は promise を返しますが、チェック コードを .then() に入れてみましたが、実行されません。

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

javascript - Chai と Sinon による約束されたサービスのテスト

私は Chai と Sinon で promies をテストすることで立ち往生しています。通常、私は xhr リクエストのラッパーでサービスを受け、約束を返します。私はそれを次のようにテストしようとしました:

これに関する私のメモ:

// spy2 は、expect finish アサーションの後に呼び出されます //
試してみましたが、結果はありませんでしたvar timer = sinon.useFakeTimers()// chai-as-promised で試しました - 使い方がわかりません :-( //私の環境で利用可能な選択された npm モジュールだけ をインストールすることはできませんtimer.tick(510);

sinon-as-promised

このコードを修正する/このサービスモジュールをテストする方法はありますか?