Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/370.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何测试ajax错误回调?_Javascript_Jquery_Selenium_Qunit - Fatal编程技术网

Javascript 如何测试ajax错误回调?

Javascript 如何测试ajax错误回调?,javascript,jquery,selenium,qunit,Javascript,Jquery,Selenium,Qunit,在ajax请求中,如何测试错误回调?是否可以模拟网络连接错误 $.ajax({ url: "myUrl", type: 'post', dataType : "json", data : ({ myJson }), success : function(jsonSaveResponse) { }, error: fun

在ajax请求中,如何测试错误回调?是否可以模拟网络连接错误

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

        },
        error: function (xhr) {

    } 

    }); 

我所做的只是在发出AJAX请求之前关闭服务器,这将模拟服务器没有响应


请记住,在刷新更改之前,需要将其重新打开。

您必须存根ajax请求,并返回将触发错误回调的自定义响应。使用Javascript测试框架可以轻松做到这一点,例如。

您可以简单地在AJAX调用的URL属性中添加错误的URL。

如果您的URL是PHP页面,您可以执行以下操作:

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

您是在实现普通AJAX还是在使用jQuery?使用错误的url(如mydomain.com/thisurldoesntextest)向xmlhttprequest对象馈送@KPBird请查看问题编辑,im使用jQuery这对我不起作用!我在$.ajax()函数中键入了url:“asdjasfd.php”!我已经在$.ajax()函数中设置了error:function(jqXHR,textStatus,errorhorn){alert(testStatus);}!我没有看到任何Javascript警报!没有什么。。。我使用的是chrome,AJAX请求可以无缝执行。。我还添加了一个成功提示:函数(data、textStatus、jQxhr)。即使是这个警报我也没有得到。现在,对于正确的url,我得到了成功的警告消息!如果在网络面板中看不到任何内容,则Xhr请求不会发生;退出;-在这种情况下,js代码的错误部分将起作用