登录接口 登录成功之后,会返回token值,在其他接口需要使用到 token值,这里就需要进行 token值的传参,也就是我们说的上下游传参。

使用字典格式数据传参

test_demo.py

  1. import requests
  2. import random
  3. def get_Phone():
  4. phone = random.randint(13000000000,13999999999)
  5. return phone
  6. # 设置手机号
  7. phone = get_Phone()
  8. testdata = {
  9. "header":{
  10. "token":None # token值默认为空
  11. }
  12. }
  13. def test_register():
  14. # 设置请求地址
  15. u = "http://49.233.108.117:28019/api/v1/user/register"
  16. # 请求的body
  17. body = {
  18. "loginName": phone,
  19. "password": "123456"
  20. }
  21. print(f'使用数据 {body} 进行注册')
  22. # 发送post请求, post请求使用json格式,json(固定的)
  23. r = requests.post(u,json=body)
  24. # 添加断言
  25. assert r.status_code == 200
  26. # 对服务器返回的结果添加断言
  27. print(r.json())
  28. assert r.json()["resultCode"] == 200
  29. assert r.json()["message"] == 'SUCCESS'
  30. def test_login():
  31. url= "http://49.233.108.117:28019/api/v1/user/login"
  32. body = {
  33. "loginName": phone,
  34. "passwordMd5": "E10ADC3949BA59ABBE56E057F20F883E"
  35. }
  36. print(f'使用数据 {body} 进行登录')
  37. r = requests.post(url,json=body)
  38. print(r.json())
  39. assert r.status_code == 200
  40. assert r.json()['resultCode'] == 200
  41. assert r.json()['message'] == 'SUCCESS'
  42. # 登录成功之后 更新token值
  43. testdata["header"]["token"] = r.json()["data"]
  44. def test_search():
  45. # 下面是搜索接口 请求地址
  46. url = "http://49.233.108.117:28019/api/v1/search"
  47. query_data = {
  48. "keyword": "iphone"
  49. }
  50. # 发送带有请求头的 get请求 headers表示请求头(固定写法) 信息头使用 testdata中的数据
  51. r = requests.get(url, params=query_data, headers=testdata["header"])
  52. assert r.status_code == 200
  53. print(r.json())
  54. def test_add_address():
  55. pass

相关问题

  1. 接口中是如何进行上下游传参的?

主要使用字典格式数据进行上下游传参。
a. 在接口开始之前设置 字典格式的数据。将要传递参数的变量都设置为None。

  1. testdata = {
  2. "header":{
  3. "token":None # token值默认为空
  4. },
  5. "goodsid":None,
  6. "cartitemid":None
  7. }
  1. b. 在接口中 获取到值之后, 更新字典中设置的字段值。<br />c. 在下游接口使用这些已经设置好的字段。