mock平台架构及实现
转载: http://blog.csdn.net/xkhgnc_6666/article/details/51757209
在测试过程中有些情况通过手工测试是无法测试出来的或是非常难复现,比如网络异常、网络延迟,又比如在接口测试过程中如果后台开发还没有把接口开发出来时有什么办法能够提前进行接口测试呢?这些情况下纯手工测试也是很难做到的,再就是在测试过程中希望合作方返回的数据可以随意设置,这种情况我们又该如何做呢?这时候mock接口就是一件能够极大的提高工作效率而且又能够实现手工测试不能做到的事情,在这里,我就把最近一段时间做mock平台的工作记录下来。
在部门里面不同的产品线都有自己的mock平台,但是不同的平台使用的技术不一样,有些是通过开源的wiremock,有些是用mina,在我这个做的mock平台主要是通过freemarker模板来模拟数据,通过接口把数据返回给调用方,下面是大体的系统架构;
这个平台主要分为两个大的部分,一个是web平台的数据录入,因为mock报文接口返回的内容不是固定死的,需要里面的一些值按照使用人的需要来进行设置,这个设置的内容就是用前面的web平台来做,另外一部分是mock接口的调用,按照合作方给出的接口报文内容,模拟接口返回的内容,在页面上是看不出来的,只是在调接口的时候才能感受到;
下面列举一下在这个mock平台中涉及到的技术点相应也会详细的介绍如何用这些技术来实现mock平台中的一些功能;
1.nginx ip转发;
2.前台web页面中涉及到的spring知识
这部分内容主要是在做前端web页面的过程中需要掌握的内容;
2.1.如何处理表单数据;
前端页面页面中有多条类似的数据需要设置,这里我们就需要通过表单的形式来对这些数据进行存储;
在合作方的接口文档中约定了,post请求必须使用json格式来传递参数,所以专门来讲下如何来做这个;
2.3.前端设置页面的数据实现自动刷新;
4.如何模拟合作方的报文(mock过程)
4.1.复杂的返回数据是如何利用freemarker来生成的;
4.1.1.返回固定报文;
4.1.2.返回可设置报文;
4.2..简单返回数据是如何模拟mock接口的;
5.灾备测试
灾备测试主要是模拟接口的成功、延时、失败的情况;
6.模拟支付失败;
7.实现的细节处理
7.1.数据类型转换;
8..未来mock平台发展方向思考;
mock平台架构及实现的更多相关文章
- 朱晔的互联网架构实践心得S2E7:漫谈平台架构的工作(基础架构、基础服务、基础平台、基础中间件等等)
前言 程序开发毕竟还不是搬砖这种无脑体力劳动,需要事先有标准,有架构,有设计,绝对不是新公司今天创立,明天就可以开始编码的.其实很多公司在起步的时候没有财力和资源建设独立的基础架构或平台架构部门,甚至 ...
- 【Mock平台】测试开发实战01-开篇PRD和需求详细
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 平台背景 从业务特性上,不少测试的服务很多是依赖第三方的接口的,比如其中的支付场景,就需要很多状态的返回进行验证,但大部分服务提供商没有很 ...
- 提高可测性-Mock平台设计和整体规划
微信搜索[大奇测试开],关注这个坚持分享测试开发干货的家伙. 平台背景 从业务特性上,不少测试的服务很多是依赖第三方的接口的,比如其中的支付场景,就需要很多状态的返回进行验证,但大部分服务提供商没有很 ...
- 测试开发【Mock平台】04实战:前后端项目初始化与登录鉴权实现
[Mock平台]为系列测试开发教程,从0到1编码带你一步步使用Spring Boot 和 Antd React 框架完成搭建一个测试工具平台,希望作为一个实战项目能为你的测试开发学习有帮助. 一.后端 ...
- 【从零开始学BPM,Day1】工作流管理平台架构学习
[课程主题] 主题:5天,一起从零开始学习BPM [课程形式] 1.为期5天的短任务学习 2.每天观看一个视频,视频学习时间自由安排. [第一天课程] Step 1 软件下载:H3 BPM10.0全开 ...
- [转] 前后端分离开发模式的 mock 平台预研
引入 mock(模拟): 是在项目测试中,对项目外部或不容易获取的对象/接口,用一个虚拟的对象/接口来模拟,以便测试. 背景 前后端分离 前后端仅仅通过异步接口(AJAX/JSONP)来编程 前后端都 ...
- 58同城高性能移动Push推送平台架构演进之路
本文详细讲述58同城高性能移动Push推送平台架构演进的三个阶段,并介绍了什么是移动Push推送,为什么需要,原理和方案对比:移动Push推送第一阶段(单平台)架构如何设计:移动Push推送典型性能问 ...
- ASP.NET 让无码编程不在是梦 -.NET通用平台、通用权限、易扩展、多语言、多平台架构框架
先拿出我半前年前平台的设计初稿,经过半年的努力我已经完成了该设计稿的所有功能.并且理念已经远远超出该设计稿. 下面是一些博友对我贴子的评价: 1.楼主,想法很美好,现实很骨感,我们公司就有一套你说的这 ...
- Android_进化史和平台架构介绍
一.Android平台发展史 2008年9月,谷歌正式发布了Android 1.0系统,全球第一台Android设备HTC (G1) 2009年4月,谷歌正式推出了Android 1.5 ...
随机推荐
- [转]Jupyter NoteBook 的快捷键使用指南
- Eureka 简介以及简单示例(创建EurekaServer工程)
Eureka 是一款开源的服务注册与发现组件,通过配合其他组件可提供负载均衡能力. 服务发现类型的技术对比: 名称 类型 AP/CP 语言 依赖 集成 一致性算法 Eureka General AP ...
- Socket通信入门小实例
客户端: public class Client { private int port = 8000; private String host = "localhost"; pri ...
- [LOJ#2326]「清华集训 2017」简单数据结构
[LOJ#2326]「清华集训 2017」简单数据结构 试题描述 参加完IOI2018之后就是姚班面试.而你,由于讨厌物理.并且想成为乔布斯一样的创业家,被成功踢回贵系. 转眼,时间的指针被指向201 ...
- [HEOI2016/TJOI2016][bzoj4555] 求和 [斯特林数+NTT]
题面 传送门 思路 首先,我们发现这个式子中大部分的项都和$j$有关(尤其是后面的$2^j\ast j!$),所以我们更换一下枚举方式,把这道题的枚举方式变成先$j$再$i$ $f(n)=\sum_{ ...
- [URAL1519] Formula 1 [插头dp入门]
题面: 传送门 思路: 插头dp基础教程 先理解一下题意:实际上就是要你求这个棋盘中的哈密顿回路个数,障碍不能走 看到这个数据范围,还有回路处理,就想到使用插头dp来做了 观察一下发现,这道题因为都是 ...
- 刷题总结——Collecting Bugs(poj2096)
题目: Description Ivan is fond of collecting. Unlike other people who collect post stamps, coins or ot ...
- Linux下对superblock的理解
对superblock的理解首先从partition structure的结构开始: 开始的,总的来说,block这个概念好理解..下面就是对super block的理解了Super block即为超 ...
- nodejs+express+mongodb搭建博客
https://github.com/lanleilin/sayHelloBlog 是可以运行的 https://github.com/lanleilin/sayHelloBlog 文件结构如下: c ...
- react 基础语法复习3- 数据传递 & 数据变化(props&&state)
react当中的数据传递是通过 props以及 state来实现的 props <Header name="kugeliu" /> Header组件当中有个name属性 ...