测试过程中,遇到一些接口具备多种功能(不满足单一职责,omz)。在 Java 应该程序中调用该接口两次,但是两次调用的间隔时间较短,来不及手动修改 MOCK 平台的数据。
1.第一次请求,返回结果如下:
{
"data": {
"msg": "请求成功",
"reqId": "61ea110d-a6ae-47f1-ae83-5b5f22da5bd8"
},
"result": "1",
"code": "",
"msg": ""
}
2.第 2 次调用接口,返回结果如下:
{
"data": {
"seqId": "DI-5fa63f7d-41cd-4af2-b871-91309a13d26e",
"seqNo": "123",
"userId": "192801",
"amount": 20000
},
"result": "1",
"code": "",
"msg": ""
}
备注:data 字段为 JAVA 语言中的 MAP 对象。
针对上述问题,其实存在一个很简单的解决方案,将 MOCK 数据设置如下:
{
"data": {
"msg": "请求成功",
"reqId": "61ea110d-a6ae-47f1-ae83-5b5f22da5bd8",
"seqId": "DI-5fa63f7d-41cd-4af2-b871-91309a13d26e",
"seqNo": "123",
"userId": "192801",
"amount": 20000
},
"result": "1",
"code": "",
"msg": ""
}
便可满足一次设置 mock 数据,满足两次调用的测试要求。
Map 对象支持添加任意键值,就这么简单!