1

更新:ここに私の問題のフィドルがあります。テストは 1 回成功し、次回は失敗します。

http://jsfiddle.net/samselikoff/hhk6u/4/

問題はdepartmentshasevents.on("userSet:company")であるため、両方の変数がイベントに応答します。


これは単体テストに関する一般的な質問です。私のアプリでは、特定のイベントが発生し、アプリの他のいくつかの部分がこのイベントをリッスンします。それらは異なる機能を実行しているため、各ピースを個別に単体テストしたいと思います。しかし、これを行うには、各テストでイベントを発生させる必要があります。

最初のテストでイベントを発生させ、他のテストでリスナーをトリガーする必要があるため、これは問題を引き起こします。複数のイベントリスナーをテストしながら、テストをアトミックに保つにはどうすればよいですか?

(私は QUnit を使用していますが、これはより一般的な単体テストの質問だと思います)。

答え:

ジェファーソンは正しいです。これを解決する簡単な方法の 1 つは、events.on の代わりに events.once を使用することです。このようにして、各テストからイベントをクリーンアップします。

4

1 に答える 1