文章目录
- 前言
- 一、postman mock server使用步骤
- 1.创建工作空间
- 2.创建mock server
- 3.发送请求
- 4.创建返回样例
- 1. 直接复制
- 2. 创建样例
- 5. 根据不同的请求内容来让mock server返回不同的样例
- 1. 根据返回码来区分
- 2. 根据样例名称来区分
- 3. 根据样例id来区分
- 4. 根据请求体来区分
- 5. 根据请求头来区分
前言
1. mock测试是什么?
mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法
简单点来说就是创建一个虚拟的后端,向虚拟的后端发送请求时,可以返回指定的数据。
2. 能解决什么问题?
当后端不稳定(如双pod实例中的某一个出现异常,此时前端的请求有时候会报错),或者后端还未开发完成,但是前后端已经约定了接口内容,前端此时需要调试,就可以创建一个mock服务
3. 为什么要做mock测试?
在业务依赖的关系接口未开发出来时,测试人员为了保证项目的测试进度不受影响,就需要构造出来一个虚拟的接口来进行一系列的接口测试
一、postman mock server使用步骤
1.创建工作空间
2.创建mock server
3.发送请求
4.创建返回样例
我们可以修改一下返回样例,根据不同的请求内容返回不同的数据
创建样例的两种方法:
1. 直接复制
2. 创建样例
注意,此时这两个样例的请求路径是一致的,但是返回结果不一样,怎么能够根据不同的请求内容来让mock server返回不同的样例呢?postman官方提供了以下几种方式
5. 根据不同的请求内容来让mock server返回不同的样例
1. 根据返回码来区分
我们可以设置正常的请求返回码是200,而异常的设置为401
![异常的返回码为401](https://img-blog.csdnimg.cn/c91d91b1ff11489d9b617537970069f8.png)
这时候再次发送请求,header中添加上参数x-mock-response-code即可,例如:
2. 根据样例名称来区分
在请求header中添加x-mock-response-name字段来指定响应样例的名称,如:
![在这里插入图片描述](https://img-blog.csdnimg.cn/206d2208d9124cecbed9da1dda2f915a.png)
3. 根据样例id来区分
根据样例id来区分其实和名称区分的用法一样,首先要获取样例的id
![在这里插入图片描述](https://img-blog.csdnimg.cn/a596b4bccc4448c3a11c314b0d4bbe5a.png)
拿到样例id以后,只需要在请求头中添加字段x-mock-response-id即可,如:
4. 根据请求体来区分
这种场景需要传入一个header,x-mock-match-request-body:true
创建一个post请求,修改用户名
这里需要注意的是,请求体里的内容必须要和样例中的请求体内容一模一样,才会有返回结果(postman这里应该是用请求体和样例中的请求体字符串对比,然后决定返回哪个样例数据)。并不是只要传入了key值就会有数据
5. 根据请求头来区分
这里可以参考postman官方的解释,字段为x-mock-match-request-headers
但是这一部分我没调通,不是很理解,这部分等搞懂了再继续写