项目目录

config/utils.py
"""定义常用的工具类"""import randomdef get_phone():"""生成随机的11位手机号码手机号的前缀; ['13','17','18','15']后面需要随机生成 9位数。:return:"""# 手机号码前缀 从列表中随机选择其中的一个值pre_phone = random.choice(['13','17','18','15'])# 随机的一个值nums = ""for i in range(9):# 每次随机的时候 生成 0-9 之间的一个数字num = random.randint(0,9)# 每次生成一个新的随机值 做一次拼接nums = nums + str(num)# 前缀和后面的值拼接在一起 组成手机号return pre_phone+nums
config/baseconfig.py
"""项目运行的常见配置"""from config.utils import get_phoneclass BaseConfig:BASEURL = "http://49.233.108.117:28019/"PHONE = get_phone()TOKEN = None
page/useraction.py
"""用户相关的操作"""from config.baseconfig import BaseConfigimport requestsimport hashlibclass UserAction:def user_register(self):"""注册用户:return:"""url = BaseConfig.BASEURL+"api/v1/user/register"body_data = {"loginName": BaseConfig.PHONE, # 通过调用函数 生成手机号码"password": "123456"}print(f'现在进行注册:用户名{BaseConfig.PHONE},密码为123456')# 发送 json 格式 post请求r = requests.post(url, json=body_data)# 状态码print(r.status_code)print(r.json())def user_login(self):"""用户登录:return:"""passwd = hashlib.md5('123456'.encode()).hexdigest()url = f"{BaseConfig.BASEURL}api/v1/user/login"body_data = {"loginName": BaseConfig.PHONE,"passwordMd5": passwd # 使用md5 加密之后的密文进行登录}print(f'现在进行登录: 用户名为 {BaseConfig.PHONE},加密之后的密码 {passwd}')r = requests.post(url, json=body_data)print(r.status_code)print(r.json())print("登录成功的token值:", r.json()["data"])# 将登录成功的token 值更新到类变量中BaseConfig.TOKEN = r.json()['data']def user_search(self):"""搜索商品:return:"""url = "http://49.233.108.117:28019/api/v1/search"qury_data = {"keyword": "iphone"}header = {# 使用类变量 获取最新的token值"token": BaseConfig.TOKEN}print(f'现在搜索商品,使用信息头: {header}')r = requests.get(url, params=qury_data, headers=header)print('搜索结果', r.json())
在main.py 文件中引用
from page.useraction import UserActionif __name__ == '__main__':us = UserAction()us.user_register()us.user_login()us.user_search()
