利用eolinker实现api接口mock测试(mock server)
来源:互联网 发布:软件开发北京 编辑:程序博客网 时间:2024/05/17 21:46
前后端分离或者是进行单元测试的时候,必须要用mock api替换掉第三方调用或者是实际的API,eolinker提供了非常全面的mock api支持,其他那些需要安装配置的mock server就不说了,有现成的干嘛还要自己搭。
Api信息如下,url里面可以把根路径去掉,直接写api的地址就行。到时候在项目里面统一配置线上环境以及测试环境的地址前缀,切换就好。
在api的编辑页面,高级mock里面,输入mock的规则就行。eolinker的mock是基于mockjs来改的,不过规则大同小异,规则可以参考这里http://mockjs.com/examples.html
编辑完成之后,回到api的详情页面,在mock的标签下面会看到有一个url,复制到项目里面就行。因为地址前缀是统一的,所以可以按照刚刚说的,在项目里统一配置一个测试的前缀,到时候上线就换成生产环境的前缀既可。支持restful这点还是非常不错的,似乎是我目前看到唯一支持restful的mock server?
用到项目里面大概是这样的(只是简单写了个demo):
public class MockServerTest { @Test public void testMockServer() throws IOException { mockClient.when( request() .withPath("http://mock.eolinker.com/TPivSvI55cabdf9f2243a023dc6a76ec9514dc38084c19d?uri=/bestedu/course/primarySchool") .withMethod("POST")// .withHeader(new Header(HttpHeaders.ACCEPT, MediaType.TEXT_PLAIN))// .withQueryStringParameter(new Parameter("my-token", "12345")) ).respond( response() .withStatusCode(200) .withBody(expected) ); CloseableHttpClient client = HttpClients.createDefault(); HttpGet httpGet = new HttpPost("http://mock.eolinker.com/TPivSvI55cabdf9f2243a023dc6a76ec9514dc38084c19d?uri=/bestedu/course/primarySchool"); CloseableHttpResponse response = client.execute(httpGet); //验证输出是否是正确 InputStream content = response.getEntity().getContent(); InputStreamReader inputStreamReader = new InputStreamReader(content); BufferedReader bufferedReader = new BufferedReader(inputStreamReader); String responseText = bufferedReader.readLine(); assertThat(responseText, equalTo(expected)); }}
除了返回mock数据之外,eolinker还有对请求方式以及参数的校验,如果不对的话还会提示,这个还是很cool的。but,对于mock的校验只有企业版才有,默默希望到时候技术老大可以批一下。。。
总结:
不重复造轮子,现在很多人崇尚自己去搞一套服务啊啥的,研究一下还行,真的干活还是简单粗暴到手即用最好。何况现在也在推崇远程办公,eolinker在这一块我觉得做的还是ok的。
阅读全文
2 0
- 利用eolinker实现api接口mock测试(mock server)
- 接口测试 mock server 工具moco
- RPC接口mock测试
- 分享妙用eolinker mock模拟后台数据快速测试
- 接口自动化测试:mock server之Moco工具
- 接口测试webserver mock编写
- 接口测试tcp mock编写
- mock-api
- Mock API
- mock-针对restful接口,开发mock测试服务
- mock server
- 测试工作中的 Mock 实现
- 测试工作中的 Mock 实现
- 测试工作中的 Mock 实现
- mock 测试
- mock测试
- MOCK测试
- mock测试
- Deep Identity-aware Transfer of Facial Attributes
- ubuntu 安装多套 gcc 和版本切换
- android webview旋转屏幕导致页面重新加载问题
- [初学笔记] matlab中 keyboard的使用
- 一些关于字符串的函数
- 利用eolinker实现api接口mock测试(mock server)
- 如何使用Retrofit写一个Android的REST客户端的小教程
- 生成二维码
- Spring @Transactional原理及使用
- UVa10340
- Codeforces876B-Divisiblity of Differences
- log4j日志配置
- 高精度练习之加法
- 自定义过滤器filter