自动化测试中有时候需要创建不同权限的账号
创建三个账号
from scripts.handle_mysql import HandleMysql # 数据库类 from scripts.handle_requsets import HandleTheRequest # 发起请求类 from scripts.handle_config import do_config # 配置文件读写类 from scripts.constants import CONFIGS_USER_ACCOUTS_DIR # 创建三个账号保存的路径 def create_new_user(regname, pwd='123456'): """ 调用一次创建一个用户账号 :param regname: 用户的注册名 :param pwd:固定密码,,不用传手机号 :return: 返回嵌套字典的字典user_dict,成功创建账号后,账号的id,regname姓名,mobilephone手机号,pwd密码 """ handle_mysql = HandleMysql() # 创建MySQL会话,最后一定要关闭 do_register = HandleTheRequest() # 创建接口请求类会话 url = do_config.get_value("api", "prefix") + "/member/register" # 拼接url # 查询创建手机号在数据库是否存在 sql = "select id from member where mobilephone=%s;" while True: # mobilephone获取未注册的手机号码 mobilephone = handle_mysql.create_not_existed_mobile() # 数据库未注册手机号码方法 # 参数 data = {"mobilephone": mobilephone, "pwd": pwd, "regname": regname} do_register.to_request(method="post", url=url, data=data) result = handle_mysql.get_value(sql=sql, args=(mobilephone,)) if result: # 如果不为空为真说明注册成功,返回一个字典 user_id = result["id"] # 注册成功后获取用户id break # 配置文件中区域名:regname,保存着id,regname姓名,mobilephone手机号,pwd密码 user_dict = { regname:{"id": user_id, "regname": regname, "mobilephone": mobilephone, "pwd": pwd } } handle_mysql.close() # 关闭MySQL链接 do_register.close() # 关闭请求会话链接 return user_dict def generate_users_config(): """ 调用三次create_new_user,生成三个用户账号的信息 :return: """ users_datas_dict = {} # update合并为一个嵌套字典的字典 users_datas_dict.update(create_new_user("admin_user")) # 管理员的账号,返回字典 users_datas_dict.update(create_new_user("invest_user")) # 投资人的账号,返回字典 users_datas_dict.update(create_new_user("borrow_user")) # 借款人的账号,返回字典 do_config.write_config(users_datas_dict, CONFIGS_USER_ACCOUTS_DIR) # 写入到配置,配置文件路径也可以是文件 if __name__ == '__main__': # 生成三个账号 # [admin_user] 管理员 # [invest_user] 投资人 # [borrow_user] 借款人 generate_users_config()
随机创建三个账号后写入配置文件的数据(手机号均为随机创建假的)
[admin_user] id = 179542 regname = admin_user mobilephone = 13982490671 pwd = 123456 [invest_user] id = 179543 regname = invest_user mobilephone = 13226834715 pwd = 123456 [borrow_user] id = 179544 regname = borrow_user mobilephone = 13907468239 pwd = 123456
我们只需要在自动化入口文件中执行用例前端,加入在没有三个账号的配置文件的时候判断,就可以自动创建三个账号
from scripts.constants import CONFIGS_USER_ACCOUTS_DIR # 三个账号配置文件路径 # 如果用户账号所在配置文件不存在,则为True,则创建账号 if not os.path.exists(CONFIGS_USER_ACCOUTS_DIR): generate_users_config()
*******请大家尊重原创,如要转载,请注明出处:转载自:https://www.cnblogs.com/shouhu/ 谢谢!!*******
本文仅供参考;如果这篇文件对你有所帮助,麻烦动动发财的小手,推荐一波支持下万分感谢
*******请大家尊重原创,如要转载,请注明出处:作者:守护@往昔;转载自:https://www.cnblogs.com/shouhu/,谢谢!!*******