12.23python学习笔记

测试工程师初体验

接口测试
在这里插入图片描述
测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

微信公众号接口测试在这里插入图片描述测试入口

http://mp.weixin.qq.com/debug/cgi-bin/sandbox?t=sandbox/login

基础测试---->获取access_token

​ 接口说明:

access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token。开发者需要进行妥善保存。access_token的存储至少要保留512个字符空间。access_token的有效期目前为2个小时,需定时刷新,重复获取将导致上次获取的access_token失效。

​ 需求分析:
在这里插入图片描述
接口调用请求说明 -->修改成专属的测试号信息

错误时微信会返回错误码等信息,JSON数据包示例如下(该示例为AppID无效错误):
{“errcode”:40013,“errmsg”:“invalid appid”}

​ appid错误的测试用例:多一位,少一位,错几位,空没有,别人的appid,超时?

用pycharm实现接口测试

微信开放文档–>用户管理–>用户标签管理

# 测试微信 公众号 ctrl+/
# 字符串,‘ ‘ ,“   ”    ,’‘’  三个单 引号,  ’‘’可做注释
#  =赋值,在内存先一片空间,再挂标签-变量名,空间内容是字符串的值
appid = '填写自己的微信appid'
appsecret = '填写对应的appsecret'
#   https请求方式: GET https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET
# 使用requests 库主要发请求收响应。如果未导入 ,可以在cmd  输入pip install requests导入
#  如果是虚拟环境,还需要在setting中导入 requests
# 导入 第三库 1、从库--本机,pip install  库名   2、本机-项目中  setting设置python interpreter 添加requests
import requests

# 1、调用access_token的接口
#  字符串与变量拼接使用+  变量名周围没有引号。,相同的才能拼接在一起。
url_token = 'https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=' + appid + '&secret=' + appsecret
res_token = requests.get(url_token)
#  显示 响应状态码
print(res_token.status_code)
#   返回字符串格式
print(res_token.text)
#  返回url的值
print(res_token.url)
# 返回二进制格式
print(res_token.content)
# 返回json格式 ,赋值给req_json变量,输出变量值
req_json = res_token.json()
print(req_json)
# {"access_token":"ACCESS_TOKEN","expires_in":7200}
# json格式是{‘key':'value','key2':'value2'}的样子,通过[key]会得到value值 ,通过[key2]会得到value2
#  把返回的响应的token值 放到变量中
access_token = req_json['access_token']
# print(req_json['access_token'])
# print(req_json['expires_in'])
#  调用用户管理标签管理查看 标签接口
# 2. 获取公众号已创建的标签
# 接口调用请求说明
# http请求方式:GET(请使用https协议) https://api.weixin.qq.com/cgi-bin/tags/get?access_token=ACCESS_TOKEN
url_get_tag='https://api.weixin.qq.com/cgi-bin/tags/get?access_token='+access_token
res_get=requests.get(url_get_tag)
res_get_json=res_get.json()
'''{   "tags":[ {
         "id":2,
         "name":"星标组",
         "count":0
     }
 ] }'''
# 验证返回响应正确,assert 是测试的方法叫断言,后面['tags']返回[{}],[0]中返回列表中第一个元素,['id']是返回id的值 。
assert 2==res_get_json['tags'][0]['id']
#  调用添加标签接口,post,下面的url是从接口文档中复制的
url_post = 'https://api.weixin.qq.com/cgi-bin/tags/create?access_token=' + access_token
# data 是字典格式 的数据
data = {"tag": {"name": "yuo3"}}
# post方法需要url和data数据,
res_post=requests.post(url=url_post, json=data)
# .json()方法是返回响应格式化json格式。print是输出在控制台
res_post_json=res_post.json()
print(res_post_json)
# 验证添加成功
print(res_post_json['tag'])
assert 'yuo3'==res_post_json['tag']['name']
# 调用Get标签
url_get_tag='https://api.weixin.qq.com/cgi-bin/tags/get?access_token='+access_token
res_get=requests.get(url_get_tag)
print(res_get.json())
# 编辑接口
url_update='https://api.weixin.qq.com/cgi-bin/tags/update?access_token='+access_token
# 更改id=103的那个tag值 为rmb,id从哪里来的眼睛调get接口返回响应中看到的。
json_update={   "tag" : {     "id" : 103,     "name" : "rmb"   } }
res_update=requests.post(url_update,json=json_update)
print(res_update.json())
assert 'ok' in res_update.json()['errmsg']
assert 'ok' in res_update.text
# 再一次调用get接口查看 是否改成功
url_get_tag='https://api.weixin.qq.com/cgi-bin/tags/get?access_token='+access_token
res_get=requests.get(url_get_tag)
print(res_get.json())
# 删除接口
url_del='https://api.weixin.qq.com/cgi-bin/tags/delete?access_token='+access_token
json_del={ "tag":{"id" : 102 } }
res_del=requests.post(url_del,json=json_del)
print(res_del.json())
assert 'ok' in res_del.text

检测通过,仅供参考

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值