1.背景
有许多的人常常需要使用第三方系统进行重复的数据查询,本文介绍使用PostMan的方式对数据进行批量的查询,减少重复的劳动。
2.工具下载
3.初入门
一、如图示进行点击,创建collection
二、输入对应的名称
三、创建Request并进行查询
四、录入对应的get请求
https://vue.ruoyi.vip/prod-api/system/user/list?pageNum=1&pageSize=10
可以看到访问是有失败的,因为咱们没有传输对应的登录标识(token)。可以登录网址:(https://vue.ruoyi.vip/monitor/online),登录成功过之后,F12,再F5刷新,找到对应的请求上的token;
对应的PostMan上的设置则为在header上录入Authorization以及从F12拷贝看到的Authorization的值;再次点击即可查询成功。
注意:Authorization对应值如有回车需要对应删除。
查询成功的界面
4.设置变量
如下图示进行点击以及录入对应的参数;并进行保存
修改对应的Request的参数为变量;并点击send
批量测试
找到Runner
点击Run进行批量查询
批量查询结果
通过csv进行对应的查询
(1)文件准备
(2)程序请求
结果查看
可以看到对应参数有对应的进行变化了。
对应的集合名称.postman_collection.json文件可以通过拷贝以下代码直接进行导入即可。
{"info": {"_postman_id": "f6a88b1d-d969-4336-9dcc-14703a9d9a60","name": "集合名称","schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json","_exporter_id": "31360463"},"item": [{"name": "New Request","request": {"method": "GET","header": [{"key": "Authorization","value": "Bearer eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImE2M2I3NDNhLThjMzYtNGFlYi04NWVhLTRkNGVkMDk4OGJkNiJ9.W6lcdFMSEHinLeVrcyhL2XidPkZnsjUT-jctJV8QL6TmCnCuDt1mYw75qpa-fhTa8A_bosk2QBCFf55M9aKKFg","type": "text"}],"url": {"raw": "https://vue.ruoyi.vip/prod-api/system/user/list?pageNum={{pageNum}}&pageSize=1","protocol": "https","host": ["vue","ruoyi","vip"],"path": ["prod-api","system","user","list"],"query": [{"key": "pageNum","value": "{{pageNum}}"},{"key": "pageSize","value": "1"}]}},"response": []}],"event": [{"listen": "prerequest","script": {"type": "text/javascript","exec": [""]}},{"listen": "test","script": {"type": "text/javascript","exec": [""]}}],"variable": [{"key": "pageNum","value": "2","type": "string"}]
}
{"info": {"_postman_id": "960a75d2-635e-4fef-9ec5-f80ebdb811aa","name": "测试批量执行1","schema": "https://schema.getpostman.com/json/collection/v2.0.0/collection.json","_exporter_id": "31360463"},"item": [{"name": "http://xxx/api_sys/xxx/clientFinancingOrder/orderCreditList","event": [{"listen": "test","script": {"exec": ["// responseBody\t\t//系统预设参数,接口返回体参数\r","// var t = JSON.stringify(responseBody)\t\t//将responseBody转换成 JSON字符串形式,非必须,在返回内容是json格式的情况下不需要\r","// var b = responseBody.substr(responseBody.indexOf(\"text\"), 10); //截取responseBody第一个text文本的首字母下标后10个字符。\r","// console.log(responseBody);\t//控制台返回responseBody的内容\r","// console.log(b);\t//控制台返回b的内容\r","// pm.test(\"截取的内容是:\" + b + \"返回体的内容是:\"+ responseBody, function () {//用例的返回内容+断言内容\r","// pm.expect(pm.response.text()).to.include(\"期望的返回内容\");\t//判断是否有期望的返回内容\r","// })\r","\r"," var t = JSON.stringify(responseBody)\r"," var result = JSON.parse(responseBody)\r","\r","console.log(pm.variables.get(\"pageNum\") , result.total)\r","\r","pm.test(\"\"+ pm.variables.get(\"pageNum\") + \",\" + JSON.stringify(result.rows), function () {//用例的返回内容+断言内容\r"," //pm.expect(pm.response.text()).to.include(\"期望的返回内容\");\t//判断是否有期望的返回内容\r","})\r",""],"type": "text/javascript"}}],"request": {"method": "POST","header": [{"key": "Authorization","value": "Bearer eyJhbGciOiJIUzUxMiJ9.eyJvcGVfbG9naW5fdXNlcl9rZXkiOiI2MmRhZDhlMC1mYWFhLTRmZWItYmE4YS01NmM5M2NiOGIzODgifQ.W2D5Aq1RTJ5cZbaqGkAmnT0qIcJ11ChngLMfymoz8tUL5cInL1FMIGmrRGsENJJ25kTPKw0F5jbjd_jwXkL15A","type": "text"}],"body": {"mode": "raw","raw": "{\"pageNum\":{{pageNum}},\"pageSize\":10}","options": {"raw": {"language": "json"}}},"url": "http://10.0.9.35:17090/api_sys/business/clientFinancingOrder/orderCreditList"},"response": []}],"event": [{"listen": "prerequest","script": {"type": "text/javascript","exec": [""]}},{"listen": "test","script": {"type": "text/javascript","exec": [""]}}],"variable": [{"key": "pageNum","value": "1","type": "string"},{"key": "Authorization","value": "Bearer eyJhbGciOiJIUzUxMiJ9.eyJvcGVfbG9naW5fdXNlcl9rZXkiOiI2MmRhZDhlMC1mYWFhLTRmZWItYmE4YS01NmM5M2NiOGIzODgifQ.W2D5Aq1RTJ5cZbaqGkAmnT0qIcJ11ChngLMfymoz8tUL5cInL1FMIGmrRGsENJJ25kTPKw0F5jbjd_jwXkL15A\n","type": "string"}]
}