一般来说,我们做web开发的时候前后台是分开做的,这样带来的优点是前台的开发者能够安心的写前台代码而后台的小伙伴就安心研究后台就OK了。

可是这样带来一个问题。当后台的小伙伴被天灾军团带走了,那前台须要依赖后台服务的代码怎么办呢?  方法是有的: 寻求近卫军团帮忙

近卫军团有非常多选手,今天要说的是 jQueryMock 这位。

mockjax官方地址:https://github.com/appendto/jquery-mockjax/

首先在你须要測试的页面里引入

  <script src="../lib/jquery-1.11.1.min.js"></script>
<script src="../lib/jquery.mockjax.js"></script>

相应文件能够去上面提到的地址找到release版本号

然后重点来。比方我们如今有一个ajax请求发到后台,须要获取一些后台数据:

TestModel = $.extend(TestModel, {
ajaxTest : function() {
$.ajax({
url : '/test/Qunit_MockAjax_Test.action',
type : 'GET',
async: false,
error : function(xhr) {
alert('error');
},
success : function(response) {
return response.result;
}
});
}
});

如今意外发生了。写'/test/Qunit_MockAjax_Test.action'这个action的小伙伴被屠夫钩走并且咬住了,一时半会回不来了。我们怎么玩呢?不能傻傻的等他回来啊。这个时候我们能够虚拟一个ajax请求的返回值

/**
* 虚拟Ajax的请求响应
*/
$.mockjax({
url: '/test/Qunit_MockAjax_Test.action',
status: 200,
responseTime: 50,
responseText: {"result":"hello mockAjax"}
});

这里面的url,就是你请求的url地址。全部指向这个地址的请求都会被mockjax截获,依照你以下配置的參数给出返回。

比方我们这里的返回就是 {"result":"hello mockAjax"} 这个json格式的返回值了。

然后我们就能够继续玩耍了。忘了那个跟屠夫一起腐烂的小伙伴吧~~~

使用jquery-mockjax模拟ajax请求做前台測试的更多相关文章

  1. 使用 jQuery Mockjax 插件模拟 Ajax 请求

    在实际的开发过程中,前端后台协商好了统一的接口,就各自开始自己的任务了.这时候我有这么一个 Ajax 请求需要从后台获取数据: $.ajax({ url: '/products/' }).done(f ...

  2. 关于JQuery中的ajax请求或者post请求的回调方法中的操作执行或者变量修改没反映的问题

    前段时间做一个项目,而项目中所有的请求都要用jquery 中的ajax请求或者post请求,但是开始处理一些简单操作还好,但是自己写了一些验证就出现问题了,比如表单提交的时候,要验证帐号的唯一性,所以 ...

  3. 模拟ajax请求爬取微博

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2018/9/26 10:26 # @Author : Sa.Song # @Desc ...

  4. Jquery progressbar通过Ajax请求获取后台进度演示

    项目源代码下载:http://download.csdn.net/detail/nuptboyzhb/6262253 1.简介 本文主要演示Jquery progressbar的进度条功能.js通过a ...

  5. Java过滤器应用-对Ajax请求做Session失效判断

    过滤器常用来对Session过期做判断 Layout.js 1.为ajax请求添加标识 2.无论ajax请求成功与否,complete函数终会执行 // 全局Ajax设置, 用于session过期后的 ...

  6. 论如何把JS踩在脚下 —— JQuery基础及Ajax请求详解

    一.什么是JQuery? JQuery是一种JavaScript框架,是一堆大神搞出来的能够让前端程序猿敲更少代码.实现更多功能的工具(在此,跪谢各位JQuery开发大大们!!!).JQuery的使用 ...

  7. POSTMAN模拟AJAX请求

    环境: 1.测试工具:POSTMAN 2.调试框架:THINKPHP 3.开发工具:PHPSTORM 需求: 1.判断HTTP提交过来的请求是否为AJAX: 是:进行,修改.新增 否:进行查询,并返回 ...

  8. jQuery选择器,Ajax请求

    jQuery选择器: $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $( ...

  9. jquery中的ajax请求到php(学生笔记)

    首先ajax的基本语法基础.(必须得引入一个jquery文件,下面的例子展示用了网上的jquery文件,要联网.) 2.请求成功(复制代码运行观察效果) <!DOCTYPE html> & ...

随机推荐

  1. tcp/心跳包

    1,http://blog.csdn.net/yuzhiyuxia/article/details/7857508 心跳包就是在客户端和服务器间定时通知对方自己状态的一个自己定义的命令字,按照一定的时 ...

  2. Linux id 命令 - 显示用户id和组id信息

    要登入一台计算机,我们需要一个用户名.用户名是一个可以被计算机识别的身份.基于此,计算机会对使用这个用户名的登陆的人应用一系列的规则.在Linux系统下,我们可以使用 id 命令. 什么是 id 命令 ...

  3. 网易云课堂_C++程序设计入门(上)_第5单元:万类霜天竞自由 – 对象和类的更多内容_第5单元作业【4】 - 在线编程(难度:难)

    第5单元作业[4] - 在线编程(难度:难) 查看帮助 返回   温馨提示: 1.本次作业属于Online Judge题目,提交后由系统即时判分. 2.学生可以在作业截止时间之前不限次数提交答案,系 ...

  4. 一道google面试题(dp)

    输入n,把1-n分成两个和相等的子集,有多少种分法 想了个dp,直接背包也行 #include <iostream> #include <cstdio> using names ...

  5. UML的基本关联

     First, a dependency is a semantic relationship between two model elements in which a change to on ...

  6. 只获取linux ip的命令

    ifconfig eth0 | awk '/inet addr/{print substr($2,6)}'

  7. button属性值

    AccessibilityObject 取得指定給控制項的 AccessibleObject. (繼承自 Control). AccessibleDefaultActionDescription 取得 ...

  8. 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件

    一.控制ChartControl的Y轴范围 使用Devexpress中的CharControl控件,需要控制AxisY轴的显示范围,需要使用该控件的BoundDataChanged事件,具体代码如下: ...

  9. JavaScript定时机制setTimeout与setInterval研究

    JavaScript的setTimeout与setInterval是两个很容易欺骗别人感情的方法,因为我们开始常常以为调用了就会按既定的方式执行, 我想不少人都深有同感, 例如 setTimeout( ...

  10. synchronized 关键字

    synchronized 多用于并发不高并且需要单线程运行的地方.比如你有一个A方法,你在方法上加了synchronized修饰.那么两个人同时去调用这个方法的时候不是并行的,是抢占的,谁先抢到资源谁 ...