使用Postman测试微信公众号接口,首先要申请一下微信公众号的账号,查看开发者文档。公众号调用各接口时都需使用access_token,access_token是公众号的全局唯一接口调用凭据,开发者需要进行妥善保存。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。
获取access_token的接口描述如下:
先在postman上创建一个collectioncollection用于存放这公众号的API:
创建一个新的request用于获取access_token:
填入API的url,url parameters,选择GET方法,发送请求:
会得到返回信息,提示发送请求的IP地址不在白名单内,需要在微信公众号的账号中将IP地址添加到IP白名单中:
再次发送请求,就能够在返回结果中看到access_token:
这时需要添加一组环境用于存储微信公众号AIPI调用需要用到的变量,一个collection用到的变量要存放在一个变量集中,因为一个collection只能指定一个与之相对应的变量集:
将获取acess token需要用到的三个参数存成变量值,再添加一个变量用于存放获取的token:
改造一下前面的获取token的request,将参数用变量替换:
先选择相应的变量集:
将request parameters替换成变量:
替换完成变量之后,再次测试request,能正确的返回token。这时就可以给获取token的request添加一个Pre-request Scripts,在console中打印处这些变量:
给获取token的request添加一个Tests用来检查返回值和设置token的值:
添加完成Tests之后,再次运行request,能看到返回值中的token已经替换access_token的初始值:
添加获取获取素材数量的request,使用前面API获取的token作为输入参数:
添加Tests检查response的返回值:
导出colloection和对应的变量集:
安装newman,用于在命令行执行postman的collection:
npm install -g newman
安装newman-reporter-htmlextra用于生成可视化的report:
npm install -g newman-reporter-htmlextra
在控制台用newman执行前面导出的postman collection:
newman run 微信公众号API.postman_collection.json -e 微信公众号API变量.postman_environment.json -r htmlextra --reporter-html-export htmlReport.html
运行完成后,会在当前目录下生成一个html报告,打开后能看到这次API测试的summery和每个接口测试的详细结果:
现在可以通过命令行来执行postman API测试了,接下来就可以在Jenkins中执行newman命令来完成API测试。
关于newman介绍和官网:
https://www.npmjs.com/package/newman
https://www.lagou.com/lgeduarticle/54081.html