1

私はqunitとJSのテストに不慣れです。テスト対象のコードは、アサートする前に完了する必要のあるアニメーション(slideDown)を実行します。簡単そうに見えますが、うまくいかないようです。

asyncTest('my test', function() {
  setTimeout(function() {
    // assert something here
    start();
  }, 1000);
});

コールバックが呼び出されることはなく、テストがハングします。

私も他のいろいろな方法を試しました。例えば:

test('my test', function() {
  expect(1);
  stop(1000);
  // assert something here
  start();
});

とが両方startstopも呼び出され、test 呼び出しが終了していることがわかりますが、それでもハングします。

重要な場合は、次のように設定します。

setup: function() {
  this.server = sinon.fakeServer.create();
  this.server.respondWith([200, { 'Content-Type': 'text/html' }, new_items()]);
  // invoke the actual system under test
  this.server.respond();
}
4

1 に答える 1

1

Sinon のフェイク タイマーがオンになっているようです (http://sinonjs.org/docs/#clock)。this.clock.tick(1001)タイムアウトを設定して呼び出します。

于 2013-01-07T03:43:29.893 に答える