开发联调的正确姿势

每天对着电脑坐着,要有正确的姿势,否则一天下来,可能腰酸背痛腿抽筋。这就是姿势不对,造成的人体内耗。晚上睡觉也是一样,睡姿不正确,醒来发现更累,都不愿意起床。对于我们这些屌丝程序员来说,开发程序联调的时候也需要有正确的姿势,否则真的会事倍功半,走上不少弯路。
image.png
关于自动化测试,大家可以参考我的另外一篇文章:斑马模块测试工具
这里我还是总结一下关于开发联调的一些事情。正如上面图所示,其实开发过程的调试主要有两部分:开发调试和测试调试。

  • 开发调试:主要是开发时本地mock数据,这些数据分为两个部分,同步的数据和异步的数据。主要是开发自己在开发过程中模拟数据来编写程序代码,实现需求效果。这个过程中由于数据都是开发自己模拟的,所以模拟的数据特征很可能都比较主观,很难涵盖所有的数据特征。一般需要开发mock一些边界数据来模拟极端情况,以增加代码的鲁棒性。
  • 测试联调:开发不使用mock数据,切换到测试环境数据,接口切换成后端的接口。这个阶段后端应该完成对接口的自测。对于同步的mock数据一般是可以预期的,因为这部分数据基本上都是运营数据,是可以自己把控的,问题不大。异步接口切换到后端接口的时候,这时候常常采用的方法是http代理,将开中需要调试的接口代理到指定的地址,其他的数据接口可以代理到测试环境数据或者线上数据。

两个接口管理平台

不得不先说下两个接口管理平台:
DIP 数据接口平台:http://dip.alibaba-inc.com/
Netease Easy Interface:https://nei.netease.com/
image.pngimage.png
DIP是阿里的产品,NEI是大网易的产品,大家可以体验使用一下。从产品功能上来说,对于接口规范制定,接口测试,这两款产品做的都很好。从项目功能丰富程度上来说,NEI还包含关于团队协作,工程规范和接口测试以及构建工具的功能。

关于同步数据

前端主要使用的是wormhole容器来渲染页面模板的,数据是基于DIP系统制定规范,在斑马系统投放的,在本地开发的时候基于tap工具可以很容易的在本地模拟数据。NEI中的前端同步数据主要是基于Freemarker模板引擎开发的,NEI提供了本地MOCK同步数据的脚手架工具,也很方便进行开发调试。
对于测试联调,同步数据的处理基本都是要在测试环境中发布后,投放数据进行测试。

关于异步数据

异步数据都是基于HTTP请求实现的,不管是ajax还是jsonp。在开发中为了最接近真是代码环境,最常用的方法是采用http代理来返回接口mock数据。

NEI是提供了一套脚手架工具,也包含了对于异步接口的处理,当然这些异步接口的数据都是平台自动生成的模拟数据,也可以根据需求自己修改数据。DIP也提供了模拟数据的功能,也提供了可以请求数据的url地址,可以根据需要自定义url匹配规则,返回指定数据。
现在数据已经有了,需要一个http代理来解决问题。需要处理两个事情:

  1. 本地开发的时候支持代理指定接口到指定数据,代理通用接口到通用地址。比如说开发时只需要把开发的接口代理到本地数据或远程数据,其他的所有接口还是想代理到线上接口真实数据
  2. 测试联调的时候,需要把开发的接口代理到指定地址,其他通用接口代理到真是数据。

关于代理

参考: 基于node开发的http请求代理程序proxy-ajax

未经允许不得转载:皓眸大前端 » 开发联调的正确姿势

赞 (1)
分享到:更多 ()

评论 1

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
  1. 沃八达人生短暂,开心每一天!回复