什么是接口?
https://gqrfgy.yuque.com/docs/share/c54f5e2e-67c1-43e0-9b4f-62abb772331a?# 《接口测试的原理》
https://gqrfgy.yuque.com/docs/share/105d4a34-421d-4a44-a508-abd7ea018e80?# 《接口测试的概念和接口组成》
https://gqrfgy.yuque.com/docs/share/d2a000b0-94de-4df1-8edd-b4db21e3c857?# 《为什么学习接口测试》
postman介绍
接口测试工具很多。 Postman,Jmeter,soupui等
下载
https://www.postman.com/downloads/
接口文档
https://work.weixin.qq.com/api/doc/90000/90135/90664
请求方式: GET(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
注:此处标注大写的单词ID和SECRET,为需要替换的变量,根据实际获取值更新。其它接口也采用相同的标注,不再说明。
参数说明:
参数 | 必须 | 说明 |
---|---|---|
corpid | 是 | 企业ID,获取方式参考:术语说明-corpid |
corpsecret | 是 | 应用的凭证密钥,获取方式参考:术语说明-secret |
权限说明:
每个应用有独立的secret,获取到的access_token只能本应用使用,所以每个应用的access_token应该分开来获取
返回结果:
{ “errcode”: 0, “errmsg”: “ok”, “access_token”: “accesstoken000001”, “expires_in”: 7200}
参数说明:
参数 | 说明 |
---|---|
errcode | 出错返回码,为0表示成功,非0表示调用失败 |
errmsg | 返回码提示语 |
access_token | 获取到的凭证,最长为512字节 |
expires_in | 凭证的有效时间(秒) |
注意事项:
开发者需要缓存access_token,用于后续接口的调用(注意:不能频繁调用gettoken接口,否则会受到频率拦截)。当access_token失效或过期时,需要重新获取。
access_token的有效期通过返回的expires_in来传达,正常情况下为7200秒(2小时),有效期内重复获取返回相同结果,过期后获取会返回新的access_token。
由于企业微信每个应用的access_token是彼此独立的,所以进行缓存时需要区分应用来进行存储。
access_token至少保留512字节的存储空间。
企业微信可能会出于运营需要,提前使access_token失效,开发者应实现access_token失效时重新获取的逻辑。
企业id | ww88fc20d87e4cdfa1 |
---|---|
会议室管理密钥 | 8kZYaPdkie4nuh3itIwhgUKpam5Xyoq5hU4uivaswp4 |
postman 发送第一个GET请求
- 打开Postman,新建一个请求。
- 根据文档上说明,选择对应的【请求方式】,【请求地址】
根据文档上的说明,复制进来。
请求方式: GET(HTTPS)
请求地址: https://qyapi.weixin.qq.com/cgi-bin/gettoken?corpid=ID&corpsecret=SECRET
- 根据文档说明,将ID,SECRET换成具体的值。(值一般是由开发提供) | ID | ww88fc20d87e4cdfa1 | | —- | —- | | SECRET | 8kZYaPdkie4nuh3itIwhgUKpam5Xyoq5hU4uivaswp4 | | | |
- 点击【Send】
保存第一个请求
测试完成之后可以将请求保存下来方便下次使用。
可以使用快捷键 CTRL+S 进行保存。 保存的时候会提示输入请求名,保存路径。
保存完成之后
可以看到
Postman7.x 版本保存
- 点击【Save】
- 输入请求名,创建集合
创建集合
可以看到保存的记录。
Postman发送第一个Post请求
根据文档
- 新建请求。根据接口文档 输入请求方式,请求路径,请求body数据。
请求方式:POST(HTTPS)
请求地址:https://qyapi.weixin.qq.com/cgi-bin/oa/meetingroom/add?access_token=ACCESS_TOKEN
注意: 请求数据
{
"name":"18F-会议室",
"capacity":10,
"city":"深圳",
"building":"腾讯大厦",
"floor":"18F",
"equipment":[1,2,3],
"coordinate":
{
"latitude":"22.540503",
"longitude":"113.934528"
}
}
参数说明:
参数 | 必须 | 说明 |
---|---|---|
access_token | 是 | 调用接口凭证 |
name | 是 | 会议室名称,最多30个字符 |
capacity | 是 | 会议室所能容纳的人数 |
city | 否 | 会议室所在城市 |
building | 否 | 会议室所在楼宇 |
floor | 否 | 会议室所在楼层 |
equipment | 否 | 会议室支持的设备列表,参数详细含义见附录 |
coordinate.latitude | 否 | 会议室所在建筑纬度,可通过腾讯地图坐标拾取器 获取 |
coordinate.longitude | 否 | 会议室所在建筑经度,可通过腾讯地图坐标拾取器 获取 |
选择 body — json格式
根据文档说明,添加数据。
{
"name":"18F-会议室",
"capacity":10
}
点击 【send】查看服务器返回结果、
练习
- 创建会议室, 使用如下数据创建 ```sql { “name”:”1008F-会议室”, “capacity”:20, “city”:”上海”, “building”:”涛飞国际”, “floor”:”108F”, “equipment”:[1,2,3], “coordinate”: { “latitude”:”22.540503”, “longitude”:”113.934528” } }
2. 创建查询接口,查看条件为
```sql
{
"city":"上海",
"building":"涛飞国际",
"floor":"108F",
"equipment":[1,2,3]
}