From bddf5d36e41b70fd4a22ce81c03af8dad172662e Mon Sep 17 00:00:00 2001 From: floraachy <1622042529@qq.com> Date: Sat, 27 May 2023 10:27:36 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=8E=A5=E5=8F=A3=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E8=80=97=E6=97=B6=E8=AE=B0=E5=BD=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- config/case_template.txt | 6 ++++-- pytest.ini | 2 +- test_case/test_manual_case/test_login_demo.py | 6 ++++-- 3 files changed, 9 insertions(+), 5 deletions(-) diff --git a/config/case_template.txt b/config/case_template.txt index f682a27..489588e 100644 --- a/config/case_template.txt +++ b/config/case_template.txt @@ -1,7 +1,7 @@ import pytest from case_utils.assert_handle import assert_response, assert_sql from loguru import logger -from case_utils.request_data_handle import RequestPreDataHandle, RequestHandle +from case_utils.request_data_handle import RequestPreDataHandle, RequestHandle, after_request_extract from pytest_html import extras # 往pytest-html报告中填写额外的内容 from common_utils.func_handle import add_docstring from case_utils.allure_handle import allure_title @@ -32,13 +32,15 @@ def ${func_title}_auto(case, extra): # 将用例数据显示在pytest-html报告中 extra.append(extras.text(str(case_data), name="用例数据")) # 发送请求 - response = RequestHandle(case_data).send_request_extract() + response = RequestHandle(case_data).http_request() # 将响应数据显示在pytest-html报告中 extra.append(extras.text(str(response.text), name="响应数据")) # 进行响应断言 assert_response(response, case_data["assert_response"]) # 进行数据库断言 assert_sql(db_info[GLOBAL_VARS["env_key"]], case_data["assert_sql"]) + # 断言成功后进行参数提取 + after_request_extract(response, case_data.get("extract", None)) else: reason = f"标记了该用例为false,不执行\\n" logger.warning(f"{reason}") diff --git a/pytest.ini b/pytest.ini index ba1d623..c58b57d 100644 --- a/pytest.ini +++ b/pytest.ini @@ -1,6 +1,6 @@ [pytest] # cmd params -addopts = -s --cache-clear --capture=sys --self-contained-html --reruns=2 --reruns-delay=5 +addopts = -s --cache-clear --capture=sys --self-contained-html --reruns=0 --reruns-delay=5 disable_test_id_escaping_and_forfeit_all_rights_to_community_support = True markers = test_login_demo: login diff --git a/test_case/test_manual_case/test_login_demo.py b/test_case/test_manual_case/test_login_demo.py index a33cddd..1c3b1e3 100644 --- a/test_case/test_manual_case/test_login_demo.py +++ b/test_case/test_manual_case/test_login_demo.py @@ -13,7 +13,7 @@ from common_utils.yaml_handle import YamlHandle from config.path_config import DATA_DIR from case_utils.assert_handle import assert_response, assert_sql from loguru import logger -from case_utils.request_data_handle import RequestPreDataHandle, RequestHandle +from case_utils.request_data_handle import RequestPreDataHandle, RequestHandle, after_request_extract from pytest_html import extras # 往pytest-html报告中填写额外的内容 from common_utils.func_handle import add_docstring from case_utils.allure_handle import allure_title @@ -42,13 +42,15 @@ def test_login_demo(case, extra): # 将用例数据显示在pytest-html报告中 extra.append(extras.text(str(case_data), name="用例数据")) # 发送请求 - response = RequestHandle(case_data).send_request_extract() + response = RequestHandle(case_data).http_request() # 将响应数据显示在pytest-html报告中 extra.append(extras.text(str(response.text), name="响应数据")) # 进行响应断言 assert_response(response, case_data["assert_response"]) # 进行数据库断言 assert_sql(db_info[GLOBAL_VARS["env_key"]], case_data["assert_sql"]) + # 断言成功后进行参数提取 + after_request_extract(response, case_data.get("extract", None)) else: reason = f"标记了该用例为false,不执行\\n" logger.warning(f"{reason}")