Ejemplo n.º 1
0
 def test_login(self, set_up, obj):
     url = hy.read_yaml('excel', 'base_url') + obj.url
     # if obj.caseId == 2:
     #     HandlePhone.loop_generate_phone()
     request_data = HandleRe.get_data(data=obj.data)
     result = set_up[0].send(url=url, data=request_data)
     try:
         assert [obj.expected,
                 obj.msg] == [result.json()['code'],
                              result.json()['msg']]
         # self.assertListEqual([obj.expected, obj.msg], [result.json()['code'], result.json()['msg']],
         #                      msg=f"用例{obj.title}执行完成")
     except AssertionError as e:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='fail')
         logger.error(e)
         raise e
     else:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='success')
         logger.info(f"用例{obj.title}执行通过")
     finally:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=8,
                             sheet_value=result.text)
Ejemplo n.º 2
0
 def test_user_register(self, one_case):
     logger.info("正在执行第{0}条用例:{1}".format(one_case["case_id"],
                                          one_case["title"]))
     url_new = config_read_file.get_value("api", "url") + one_case["url"]
     new_data = HandleContext.reginster_paramization(one_case["data"])
     logger.info("\n请求url为{0}\ndata为{1}".format(url_new, new_data))
     register = self.resp.sendRequests(method=one_case["method"],
                                       url=url_new,
                                       data=eval(new_data))  # 返回注册响应对象
     try:
         self.assertEqual(one_case["expected"],
                          register.text,
                          msg=one_case["title"])
         result = "True"
         logger.info("\'{0}\'用例执行成功".format(one_case["title"]))
     except AssertionError as err:
         logger.error("{0}用例执行失败,错误信息为: {1}".format(one_case["title"], err))
         result = "False"
         raise err
     finally:
         logger.info("写入结果开始")
         do_excel.write_result(row=one_case["case_id"] + 1,
                               column=8,
                               result=result)
         do_excel.write_result(row=one_case["case_id"] + 1,
                               column=7,
                               result=register.text)
         logger.info("写入结果结束")
Ejemplo n.º 3
0
 def test_invest(self, set_up, obj):
     url = hy.read_yaml('excel', 'base_url') + obj.url
     request_data = HandleRe.get_data(data=obj.data)
     result = set_up[0].send(url=url, data=request_data)
     if obj.caseId == 2:
         login_token = result.json()['data']['token_info']['token']
         set_up[0].common_head({"Authorization": "Bearer " + login_token})
     try:
         assert [obj.expected,
                 obj.msg] == [result.json()['code'],
                              result.json()['msg']]
     except AssertionError as e:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='fail')
         logger.error(e)
         raise e
     else:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='success')
         logger.info(f"用例{obj.title}执行通过")
     finally:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=8,
                             sheet_value=result.text)
Ejemplo n.º 4
0
 def test_register(self, set_up, obj):
     url = hy.read_yaml('excel', 'base_url') + obj.url
     request_data = HandleRe.get_data(data=obj.data)
     result = set_up[0].send(url=url, data=request_data)
     try:
         assert [obj.expected,
                 obj.msg] == [result.json()['code'],
                              result.json()['msg']]
         if obj.caseId == 1:
             phone = result.json()['data']['mobile_phone']
             mysql_result = set_up[1].get_mysql_result(hy.read_yaml(
                 'mysql', 'sql'),
                                                       args=phone)
             assert mysql_result is not None
     except AssertionError as e:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='fail')
         logger.error(e)
         raise e
     else:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='success')
         logger.info(f"用例{obj.title}执行通过")
     finally:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=8,
                             sheet_value=result.text)
Ejemplo n.º 5
0
 def test_recharge(self, set_up, obj):
     url = hy.read_yaml('excel', 'base_url') + obj.url
     request_data = HandleRe.get_data(data=obj.data)
     result_sql = obj.sql
     invest_phone = set_up[2].read_yaml("investor", 'mobile_phone')
     if result_sql:
         mysql_result = set_up[1].get_mysql_result(sql=result_sql,
                                                   args=invest_phone)
         if mysql_result[0]:
             before_amount = float(mysql_result[0])
         else:
             before_amount = 0
     result = set_up[0].send(url=url, data=request_data)
     if obj.caseId == 2:
         login_token = result.json()['data']['token_info']['token']
         set_up[0].common_head({"Authorization": "Bearer " + login_token})
     try:
         assert [obj.expected,
                 obj.msg] == [result.json()['code'],
                              result.json()['msg']]
         if result_sql:
             mysql_result = set_up[1].get_mysql_result(sql=result_sql,
                                                       args=invest_phone)
             if mysql_result:
                 after_amount = float(mysql_result[0])
                 recharge_value = float(
                     result.json()['data']['leave_amount'])
                 assert after_amount - before_amount == recharge_value
     except AssertionError as e:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='fail')
         logger.error(e)
         raise e
     else:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=7,
                             sheet_value='success')
         logger.info(f"用例{obj.title}执行通过")
     finally:
         self.he.write_excel(rowid=int(obj.caseId) + 1,
                             colid=8,
                             sheet_value=result.text)
Ejemplo n.º 6
0
 def test_register_case(self, case):
     title = case.title
     base_url = hy.read_yaml('api', 'load')
     all_url = ''.join((base_url, case.url))
     re_data = HandleRe.get_re(case.data)
     result = self.hr.send(url=all_url, data=re_data)
     code = result.json()['code']
     msg = result.json()['msg']
     try:
         self.assertListEqual([case.expected, case.msg], [code, msg], msg=f"用例{title}测试完成")
         if int(case.caseId) == 1:
             response_phone = result.json()['data']['mobile_phone']
             bl = self.hm.phone_exist_mysql(response_phone)
             self.assertTrue(bl)
     except Exception as e:
         self.he.write_excel(int(case.caseId) + 1, 7, value="fail")
         self.he.write_excel(int(case.caseId) + 1, 8, value=result.text)
         logger.error(e)
         raise e
     else:
         self.he.write_excel(int(case.caseId) + 1, 7, value="success")
         self.he.write_excel(int(case.caseId) + 1, 8, value=result.text)
         logger.info(title)
Ejemplo n.º 7
0
 def tearDownClass(cls):
     cls.resp.close()
     logger.info("{0}".format("执行用例完成"))
     logger.info("******************************************************")
Ejemplo n.º 8
0
 def setUpClass(cls):
     cls.resp = HandleRequest()
     logger.info("******************************************************")
     logger.info("{0}".format("开始执行用例"))
Ejemplo n.º 9
0
    def test_user_login(self, one_case):
        logger.info("正在执行第{0}条用例:{1}".format(one_case["case_id"],
                                             one_case["title"]))

        url_new = config_read_file.get_value("api", "url") + one_case["url"]
        new_data = HandleContext.invest_paramization(one_case["data"])
        logger.info("\n请求url为{0}\ndata为{1}".format(url_new, new_data))
        invest = self.resp.sendRequests(method=one_case["method"],
                                        url=url_new,
                                        data=eval(new_data))  # 返回投资的响应对象

        if "加标成功" in invest.text:
            check_sql = one_case["check_sql"]
            if check_sql:
                check_sql = HandleContext.invest_paramization(check_sql)
                mysql_result = self.sql.run_sql(check_sql)
                setattr(HandleContext, "loan_id", mysql_result.get("Id"))

        logger.info("\n响应数据为{1}".format(url_new, invest.text))
        try:
            self.assertEqual(one_case["expected"],
                             invest.text,
                             msg=one_case["title"])
            logger.info("\'{0}\'用例执行成功".format(one_case["title"]))
            result = "True"
        except AssertionError as err:
            logger.error("{0}用例执行失败,错误信息为: {1}".format(one_case["title"], err))
            result = "False"
            raise err
        finally:
            logger.info("写入结果开始")
            do_excel.write_result(row=one_case["case_id"] + 1,
                                  column=8,
                                  result=result)
            do_excel.write_result(row=one_case["case_id"] + 1,
                                  column=7,
                                  result=invest.text)
            logger.info("写入结果结束")