2016-05-30 12 views
2

私はBotをMochaとChai(BDDモード)でテストしています。Microsoft Bot Frameworkの非同期応答のテスト

イベントエミッタから聞いて、私が持っている返信を確認し、送信したテキストに基づいて意味があるかどうかを確認したいと思います。私のテストで

beforeEach(function (done) { 
    bot = require('myModule').textBot; 
    bot.removeAllListeners('reply'); 
    done(); 
}); 

describe('', function(){ 
    it('', function (done) { 
     bot.on('reply', function (message) { 
      assert.include(message.text.toLowerCase(), ''); 
      done(); 
     }); 
     bot.processMessage({text: 'message_that_will_trigger'}); 
    }); 
}); 

私は複数を持っているが、説明し、そのを複数:

私のテストでは、通常、このパッテンに従ってください。場合によっては、誤った応答コールバックで応答がトリガーされることがあります(beforeEachのすべてのコールバックをリセットしても)、テストは失敗します。

特定のテストのみを実行するとします。彼らはパスする。

これをテストする最良の方法ですか?これをどうすれば解決できますか?

答えて

-1

誰かがこれにつまずく場合。

が、私は他のテストをめちゃくちゃに明らかに何もしていないを主張してテストしていた...あなたは前にあなたが呼び出して「完了」に何かを主張していることを確認します。テストを削除した後、すべてがスムーズに実行されました。

+0

「完了」を呼び出す前に何かをアサートしているかどうかにかかわらず、モカはまったく気にしません。 – Louis

関連する問題