mock平台架构及实现(持续更新)

       在测试过程中有些情况通过手工测试是无法测试出来的或是非常难复现,比如网络异常、网络延迟,又比如在接口测试过程中如果后台开发还没有把接口开发出来时有什么办法能够提前进行接口测试呢?这些情况下纯手工测试也是很难做到的,再就是在测试过程中希望合作方返回的数据可以随意设置,这种情况我们又该如何做呢?这时候mock接口就是一件能够极大的提高工作效率而且又能够实现手工测试不能做到的事情,在这里,我就把最近一段时间做mock平台的工作记录下来。

      在部门里面不同的产品线都有自己的mock平台,但是不同的平台使用的技术不一样,有些是通过开源的wiremock,有些是用mina,在我这个做的mock平台主要是通过freemarker模板来模拟数据,通过接口把数据返回给调用方,下面是大体的系统架构;

mock平台架构及实现(持续更新)_第1张图片

这个平台主要分为两个大的部分,一个是web平台的数据录入,因为mock报文接口返回的内容不是固定死的,需要里面的一些值按照使用人的需要来进行设置,这个设置的内容就是用前面的web平台来做,另外一部分是mock接口的调用,按照合作方给出的接口报文内容,模拟接口返回的内容,在页面上是看不出来的,只是在调接口的时候才能感受到;

下面列举一下在这个mock平台中涉及到的技术点相应也会详细的介绍如何用这些技术来实现mock平台中的一些功能;

1.nginx ip转发;

2.前台web页面中涉及到的spring知识

      这部分内容主要是在做前端web页面的过程中需要掌握的内容;

2.1.如何处理表单数据;

      前端页面页面中有多条类似的数据需要设置,这里我们就需要通过表单的形式来对这些数据进行存储;

2.2.post请求中如何使用json格式进行请求;

       在合作方的接口文档中约定了,post请求必须使用json格式来传递参数,所以专门来讲下如何来做这个;

2.3.前端设置页面的数据实现自动刷新;

3.post请求和get请求;

4.如何模拟合作方的报文(mock过程)

4.1.复杂的返回数据是如何利用freemarker来生成的;

4.1.1.返回固定报文;

4.1.2.返回可设置报文;

4.2..简单返回数据是如何模拟mock接口的;

5.灾备测试

    灾备测试主要是模拟接口的成功、延时、失败的情况;

6.模拟支付失败;

7.实现的细节处理

7.1.数据类型转换;

8..未来mock平台发展方向思考;

(待补充。。。。。。)

你可能感兴趣的:(JAVA,freemarker,spring,nginx,jQuery,1.mock,mock测试工具)