def test_verfyauthcase(self, case): logger.info("开始执行:{}".format(case.title)) logger.info("--------------------") case.data = replace_getdata(case.data, "mobile_phone", self.phone) info_name = random_name() case.data = replace_getdata(case.data, "info_name", info_name) case.data = replace_getdata(case.data, "true_username", info_name) case.data = replace_getdata(case.data, "card_number", RandomCarid().gennerator()) case.data = getdata(case.data) logger.info("替换后的数据为:{}".format(case.data)) res = WebApi(case.url).info_api(case.api, case.data) logger.info("请求接口后得到的数据:{}".format(res)) try: self.assertEqual(case.exp, res["retInfo"]) ExcelTest(cantins.data_path, "verifyUserAuth").write_excel(case.case_id + 1, str(res["retInfo"]), "pass") if case.title == "正常获得验证码": data = DoMysql().fecth_one(eval(case.sql)["sql"]) setattr(Code, "verify_code", data["Fverify_code"]) if case.title == "注册成功": case.sql = replace_getdata(case.sql, "info_name", info_name) data = DoMysql().fecth_one(eval(case.sql)["sql"]) setattr(Code, "uid", data["Fuid"])
def info_api(self, api, data): logger.info("测试数据是:{}".format(data)) if type(data) == str: data = eval(data) try: return eval("self.client.service.{}({})".format(api, data)) except suds.WebFault as e: return e.fault.faultstring
def test_verfyauthcase(self, case): logger.info("开始执行:{}".format(case.title)) logger.info("--------------------") if case.data.find("user_name") > -1: name = random_name() case.data = case.data.replace("user_name", name) logger.info( case.data ) # {"uid":"#uid#","true_name":"周已相","cre_id":"card_number"}
def test_sendcode(self,case): logger.info("开始执行测试用例:{}".format(case.title)) res = WebApi(case.url).info_api(case.api,case.data) logger.info("请求接口返回的结果:{}".format(res)) logger.info("得到的数据是:{}".format(res)) try: if case.exp == 0: self.assertEqual(str(case.exp),res["retCode"]) ExcelTest(cantins.data_path,"sendcode").write_excel(case.case_id+1,eval(res["retCode"]),"pass") else:
def test_sendcode(self, case): logger.info("开始执行测试用例:{}".format(case.title)) # if case.data.find("mobile_phone") > -1: # case.data = case.data.replace("mobile_phone",create_phone()) phone = create_phone() print(phone) case.data = replace_getdata(case.data, "mobile_phone", phone) res = WebApi(case.url).info_api(case.api, case.data) logger.info("请求接口返回的结果:{}".format(res)) logger.info("得到的数据是:{}".format(res)) try: if case.exp == 0: self.assertEqual(str(case.exp), res.retCode) ExcelTest(cantins.data_path, "sendcode").write_excel(case.case_id + 1, str(res.retCode), "pass") else:
def info_api(self, api, data): logger.info("测试数据是:{}".format(data)) if type(data) == str: data = eval(data) if api.lower() == "sendmcode": try: return self.client.service.sendMCode(data) except suds.WebFault as e: return e.fault elif api.lower() == "userregister": return self.client.service.userRegister(data) elif api.lower() == "verifyuserauth": return self.client.service.verifyUserAuth(data) elif api.lower() == "bindbankcard": return self.client.service.bindBankCard(data) else: print("你输入的api不正确") return None
class VerifyAuthcase(unittest.TestCase): @classmethod def setUpClass(cls): logger.info("测试前的前置工作") @data(*ExcelTest(cantins.data_path, "verifyUserAuth").read_excel()) def test_verfyauthcase(self, case): logger.info("开始执行:{}".format(case.title)) logger.info("--------------------") if case.data.find("user_name") > -1: name = random_name() case.data = case.data.replace("user_name", name) logger.info( case.data ) # {"uid":"#uid#","true_name":"周已相","cre_id":"card_number"} if case.data.find("card_number") > -1: logger.info(case.data) car_id = RandomCarid().gennerator() logger.info(car_id) case.data = case.data.replace("card_number", car_id) logger.info(case.data)
def tearDownClass(cls): logger.info("用例执行结束的后置工作")
def setUpClass(cls): logger.info("用例执行前置工作")
def setUpClass(cls): logger.info("执行用例的前置工作")
def setUpClass(cls): cls.phone = create_phone() logger.info("测试前的前置工作")
def setUpClass(cls): logger.info("测试前的前置工作")
logger.info("--------------------") if case.data.find("user_name") > -1: name = random_name() case.data = case.data.replace("user_name", name) logger.info( case.data ) # {"uid":"#uid#","true_name":"周已相","cre_id":"card_number"} if case.data.find("card_number") > -1: logger.info(case.data) car_id = RandomCarid().gennerator() logger.info(car_id) case.data = case.data.replace("card_number", car_id) logger.info(case.data) case.data = getdata(case.data) res = WebApi(case.url).info_api(case.api, case.data) logger.info("请求接口后得到的数据:{}".format(res)) try: if case.title == "身份认证通过": self.assertEqual(str(case.exp), res["retCode"]) ExcelTest(cantins.data_path, "verifyUserAuth").write_excel( case.case_id + 1, eval(res["retCode"]), "pass") #断言数据库中的数据 if case.sql: case.sql = getdata(case.sql) after = DoMysql().fecth_one(eval(case.sql)["sql"]) self.assertIsNotNone(name, after["Ftrue_name"]) after_2 = DoMysql().fecth_one(eval(case.sql)["sql2"]) self.assertEqual(1, int(after_2["count(*)"])) else: self.assertEqual(case.exp, res["retInfo"]) ExcelTest(cantins.data_path, "verifyUserAuth").write_excel(