0

私は QUnit を初めて使用し、いくつかのテストを作成しようとしました。ナビゲーションのクリックをシミュレートするために ajax-Request を送信しました。その後、2 つの入力フィールドに入力して送信ボタンをクリックします。ここで、結果を待って、予想される「電子メールが送信されました」という成功メッセージを取得したいと思います。残念ながら、無限ループのようにテスト スイートが何度も開始されます。何が問題なのですか? 前もって感謝します。

これが私のコードです:

// Aufruf in layouttest.phtml
function runTestSuite(){
// Standardtest QUnit
test("Standardtest", function() {
    ok(true, "Test erfolgreich durchlaufen.");
    var value = "hallowelt";
    equal( value, "hallowelt", "Wert hallowelt wird erwartet!" );
});

// Sende Formularinfo an Server
test("Klick Kontakt, sende Formular", function() {
    var mes = "test: Klick Kontakt, sende Formular;";
    stop(); // Test anhalten fuer bestimmte Zeitspanne
    // Ajax1: Klicke Kontakt
    jQuery.ajax({
        url: "./../index/kontakt/",
        async: false,
        success: function(response){
            if (response){
                jQuery('#ajaxcontent').html(response);
            }
        },
        context: document.body,
        type: "GET"
    });
    // Aktion: Fuelle Formular, Klick auf Button;
    var emailField = jQuery('input#email').eq(0);
    emailField.val('xxx@xxx.com');
    var textArea = jQuery('textarea#ta01').eq(0);
    textArea.val('Testcontent ...');
    var submitButton = jQuery('input#submit').eq(0);
    submitButton.click();
    // Warte auf Resultat, unterbreche test-Funktion, pruefe Assertion, lasse Test weiterlaufen;
    setTimeout(function(){
        var exp = "E-Mail verschickt.";
        var act = jQuery('#ajaxcontent h3 p').eq(0).text();
        equal(act, exp, mes);
        // Restart des Tests
        start();
    }, 3000); // 3 Sekunden warten
});
}
4

0 に答える 0