def test_login(self, case): if "#phone#" in case.data: phone = gen_mobile() case.data = case.data.replace("#phone#", phone) logging.info("开始执行第{}个条测试用例".format(case.case_id)) data_2 = data_1.data1 data_2["data"] = json.loads(case.data) res = Request().request(case.method, case.url, data_2) test_api = json.loads(decrypt_str(res.json())) # print(test_api) try: excepted = eval(case.expected) for key, value in excepted.items(): self.assertEqual(value, test_api[key]) if test_api["Status"] == 000000: data_dice = json.loads(case.data) sql = "select * from ab_member where mobile=to_base64(AES_ENCRYPT('{}','19549303ghdyoscc'))".format( data_dice["Mobile"]) sql = "select * from futureloan.member where mobile_phone={};".format( data_dice["mobile_phone"]) ress = self.mysql.fet_all(sql) self.assertTrue(ress) self.do_excel.write_data(case.case_id + 1, res.text, "pass") logging.error("第{}条的结果为:pass".format(case.case_id)) except AssertionError as e: self.do_excel.write_data(case.case_id + 1, res.text, "flas") logging.error("第{}条的结果为:flas".format(case.case_id)) raise e
class data_1: Version = "1.0" TimeStamp = str(time_sj()) versionQD = "1234567890" RequestId = "10000000000000000" ChannelNo = "HY" Token = "TOKEN_337298514abaa358298845cf5bcebab6" Hmac = MD5Test("ChannelNo=HY&RequestId=10000000000000000&TimeStamp=" + TimeStamp + "&Token=" + Token + "&Version=1.0" + versionQD).upper() data1 = { "Version": "1.0", "TimeStamp": str(time_sj()), "RequestId": "10000000000000000", "ChannelNo": "HY", "Hmac": Hmac, "Token": Token } dat = {"Password": MD5Test("123123gnn").upper()} data1["data"] = dat url = "https://t-bjbus.tuspass.net/member/checkPassword" res = requests.request(method="post", url=url, json=data1) # print(login()) print(decrypt_str(res.json()))
def login(): url = "/member/login" method = "post" data = { "Mobile": "18735571533", "Password": MD5Test("123123gnn").upper(), "deviceid": "123" } data_2 = data_1.data1 data_2["data"] = data res = Request().request(method=method, url=url, json=data_2) return json.loads(decrypt_str(res.json()))
def test_login(self, case): logging.info("开始执行第{}个条测试用例".format(case.case_id)) data_2 = data_1.data1 data_2["data"] = json.loads(case.data) res = Request().request(case.method, case.url, data_2) test_api = json.loads(decrypt_str(res.json())) try: excepted = eval(case.expected) for key, value in excepted.items(): self.assertEqual(value, test_api[key]) self.do_excel.write_data(case.case_id + 1, res.text, "pass") logging.error("第{}条的结果为:pass".format(case.case_id)) except AssertionError as e: self.do_excel.write_data(case.case_id + 1, res.text, "flas") logging.error("第{}条的结果为:flas".format(case.case_id)) raise e
""" 把方法转换为大写""" method = method.upper() """ 地址路径进行拼接""" confin = confing() url_1 = confin.get("api", "pre_url") url = url_1 + url """参数str强转为dict""" if type(json) == str: json = eval(json) """公共参数与参数进行拼接请求接口""" if method == "GET": return requests.request(method, url=url, json=json) if method == "POST": return requests.request(method, url=url, json=json) else: print("接口错误") if __name__ == "__main__": url = "/member/login" method = "post" data = { "Mobile": "18735571533", "Password": MD5Test("123123gnn").upper(), "deviceid": "123" } data_2 = data_1.data1 data_2["data"] = data res = Request().request(method=method, url=url, json=data_2) print(decrypt_str(res.json()))