做接口测试,不管是使用 Postman,JMeter 工具来做,还是使用代码的方式来做。都需要进行接口上下游传参的处理。

api_register_login.py
# 导入 requestsimport requestsphone = "13213331333"testcase={"register":{ # 注册接口"url":"http://49.233.108.117:28019/api/v1/user/register","body":{"loginName": phone,"password": "123456"}},"login":{ # 登录接口"url":"http://49.233.108.117:28019/api/v1/user/login","body":{"loginName": phone,"passwordMd5": "E10ADC3949BA59ABBE56E057F20F883E"}}}# 注册用户r1 = requests.post(url=testcase["register"]["url"],json=testcase["register"]["body"])print(r1.status_code,r1.json())# 登录r2 = requests.post(url=testcase["login"]["url"],json=testcase["login"]["body"])print(r2.status_code,r2.json())
生成随机手机号码
# 导入 requestsimport requests# python中内置的随机模块import random# 生成随机值。 13000000000 -- 13999999999phone = random.randint(13000000000,13999999999)print(f'生成随机的手机号 {phone}')testcase={"register":{ # 注册接口"url":"http://49.233.108.117:28019/api/v1/user/register","body":{"loginName": phone,"password": "123456"}},"login":{"url":"http://49.233.108.117:28019/api/v1/user/login","body":{"loginName": phone,"passwordMd5": "E10ADC3949BA59ABBE56E057F20F883E"}}}# 注册用户r1 = requests.post(url=testcase["register"]["url"],json=testcase["register"]["body"])print(r1.status_code,r1.json())# 登录r2 = requests.post(url=testcase["login"]["url"],json=testcase["login"]["body"])print(r2.status_code,r2.json())
添加对应的token值
# 导入 requestsimport requests# python中内置的随机模块import random# 生成随机值。 13000000000 -- 13999999999phone = random.randint(13000000000,13999999999)print(f'生成随机的手机号 {phone}')testcase={"header":{ # 信息头"token":None #默认没有token值},"register":{ # 注册接口"url":"http://49.233.108.117:28019/api/v1/user/register","body":{"loginName": phone,"password": "123456"}},"login":{"url":"http://49.233.108.117:28019/api/v1/user/login","body":{"loginName": phone,"passwordMd5": "E10ADC3949BA59ABBE56E057F20F883E"}},"search":{"url":"http://49.233.108.117:28019/api/v1/search","query":{"keyword":"iphone"}}}# 注册用户r1 = requests.post(url=testcase["register"]["url"],json=testcase["register"]["body"])print(r1.status_code,r1.json())# 登录r2 = requests.post(url=testcase["login"]["url"],json=testcase["login"]["body"])print(r2.status_code,r2.json())# 登录成功之后,将token值更新到 testcase中header 信息头中testcase["header"]["token"] = r2.json()["data"]# 搜索 添加headers 信息头r3 = requests.get(url=testcase["search"]["url"],params=testcase["search"]["query"],headers=testcase["header"])print(r3.status_code,r3.json())
上下游传参
在Python接口自动化中 上下游 传参 比如上面例子中 传入 token值,传输方式 使用的是 将token值设置在字典中。通过更新字典的值, 下游接口中直接访问字典的值,进行上下游传参。
