前后端分离开发模式的 mock 平台预研
原文地址 引入mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试。 背景前后端分离
开发流程
面临问题
解决方法
接口文档服务器功能接口编辑功能
接口查看功能
用法
优点
前端 mock 方法回顾前端开发过程中,使用 mock 数据来模拟接口的返回,对开发的代码进行业务逻辑测试。解决开发过程中对后台接口的依赖。 硬编码数据将 mock 数据写在代码中。 示例// $.ajax({ // url: ‘https://cntchen.github.io/userInfo’,// type: 'GET',// success: function(dt) { var dt = { "isSuccess": true,"errMsg": "This is error.","data": { "userName": "Cntchen","about": "FE" },}; if (dt.isSuccess) { render(dt.data); } else { console.log(dt.errMsg); } // },// fail: function() {} // }); 优点
痛点
请求拦截 & mock 数据hijack(劫持)接口的网络请求,将请求的返回替换为代码中的 mock 数据。 实例jquery-mockjax
优点
痛点
本地 mock 服务器将 mock 数据保存为本地文件。在前端调试的构建流中,用 node 开本地 mock 服务器,请求接口指向本地 mock 服务器,本地 mock 服务器 response mock 文件。 mock 文件.mock ├── userInfo.json ├── userStars.json ├── blogs.json └── following.json 接口调用
优点
痛点
代理服务器
map local
map remote
rewrite
优点
痛点
mock 平台接口文档服务器使用接口文档服务器来定义接口数据结构
mock服务器mock 服务器根据接口文档自动生成 mock 数据,实现了接口文档即API
优点
缺点
业界实践公司实践没有找到公司级别的框架,除了阿里的 RAP。可能原因:
github 开源库
一种使用类markdown语法的接口编写语言,使用json-schema和mson作为接口字段描述。有完善的工具链进行接口文件 Edit,Test,Mock,Parse,Converter等。
定义了一套接口文档编写语法,然后可以自动生成接口文档。相关项目: Swagger Editor ,用于编写 API 文档。Swagger UI restful 接口文档在线自动生成与功能测试软件。点击查看Swagger-UI在线示例。
商业化方案
其他实践API Evangelist(API 布道者) 总结对于前后端分离开发方式,已经有比较成熟的 mock 平台,主要解决了2个问题:
后记预研时间比较有限,有一些新的 mock 模式或优秀的 mock 平台没有覆盖到,欢迎补充。 References
END(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |