QUnitは初めてです。jQuery(1.4.2および1.5.1でテスト済み)と最新のQUnitを使用しています。1回のテストでイベントを正常にトリガーできますが、その後のテストは失敗します。簡略化した再現は次のとおりです。
// code under test - "#Test1" is just an empty div
$(document).ready(function() {
$('#Test1').mouseenter(function(e) { console.log('ENTER');});
$('#Test1').mouseleave(function(e) { console.log('LEAVE');});
});
// tests
test('enter', function() {
$('#Test1').mouseenter();
});
test('leave', function() {
$('#Test1').mouseleave();
});
テストを実行すると、コンソールはENTERのみを出力します。ただし、単一のテストを使用する場合...
test('enterleave', function() {
$('#Test1').mouseenter();
$('#Test1').mouseleave();
});
...コンソールはENTERとLEAVEを出力します。QUnitのtriggerEvent、jQuery.triggerなどを使用してみましたが無駄になりました。この問題は、複数のブラウザで再現されます。イベントを正しくテストしていますか?
ここで完全な再現:http://jsbin.com/obehu5/edit。