2012-09-17 16 views
15

Bir ajax isteğinde, hata geri bildirimi nasıl test edilebilir? Bir ağ bağlantısı hatasını simüle etmek mümkün mü?ajax hatası geri dönüş testi nasıl test edilir?

$.ajax({ 
     url: "myUrl",  
     type: 'post', 
     dataType : "json", 
     data : ({ 
      myJson 
     }), 
     success : function(jsonSaveResponse) { 

     }, 
     error: function (xhr) { 

    } 

    }); 
+0

Düz AJAX kullanıyor musunuz veya jQuery kullanıyor musunuz? –

+0

, xmlhttprequest nesnesini yanlış bir URL ile besler (mydomain.com/thisurldoesntexist gibi bir şey) –

+0

@KPBird jQuery –

cevap

15

AJAX çağrısının URL özelliğine yanlış bir URL koyabilirsiniz. URL bir PHP sayfa ise

+0

'u kullanarak soru yönergelerine bakın. Bu benim için çalışmıyor! $ .ajax() işlevimin içinde "asdjasfd.php" yazarak url yazdım! ve \t hatası ayarladık: function (jqXHR, textStatus, errorThrown) {alert (testStatus); }, $ .ajax() işlevinin içinde! Herhangi bir Javascript uyarısı görmüyorum! –

+0

Ağ panelinde ne görüyorsunuz? –

+0

Hiçbir şey ... Ben krom kullanıyorum ve AJAX isteği sadece sorunsuzca gider .. Ayrıca başarı için bir uyarı ekledim: function (data, textStatus, jQxhr). Bu uyarı bile almadım. Rightnow, doğru url için uyarı mesajı olarak başarıyı yakalarım! –

3

Ben sunucusu yanıt vermiyor simüle edilecek AJAX isteği yapmadan önce sadece benim sunucuyu kapatmanız yeterli yaptıkları.

Değişiklikleri yenilemek için önce tekrar açmanız gerektiğini unutmayın.

1

ajax isteğini saptamanız ve hata geri bildirimini tetikleyecek özel bir yanıt vermeniz gerekir. Bunu, Jasmine gibi Javascript test çerçeveleriyle kolayca yapabilirsiniz.

1

, böyle bir şey yapabilirsiniz: Eğer hata işlevi test bittiğinde

<?php 
    header("HTTP/1.0 404 Not Found"); 
    exit(); 
    //the rest of your code 

Sadece daha sonra dışarı yorum yapabilirsiniz.

İlgili konular