From d71dce9f547288741012268e481a7990624fc9dc Mon Sep 17 00:00:00 2001 From: mikigo Date: Fri, 26 Jan 2024 18:42:41 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E8=AE=A1=E7=AE=97=E6=94=B6=E9=9B=86?= =?UTF-8?q?=E7=94=A8=E4=BE=8B=E6=95=B0=E9=87=8F=E5=89=94=E9=99=A4skip?= =?UTF-8?q?=E5=92=8Cskipif=E7=9A=84=E7=94=A8=E4=BE=8B=E6=95=B0=E9=87=8F?= =?UTF-8?q?=EF=BC=9B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Description: Log: --- conftest.py | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) diff --git a/conftest.py b/conftest.py index 925947d..6c4f831 100644 --- a/conftest.py +++ b/conftest.py @@ -1,8 +1,6 @@ #!/usr/bin/env python3 # _*_ coding:utf-8 _*_ - # SPDX-FileCopyrightText: 2023 UnionTech Software Technology Co., Ltd. - # SPDX-License-Identifier: GPL-2.0-only # pylint: disable=C0301,R0912,C0413,R0914,W0212,R1702,R0915 # pylint: disable=C0114,W0621,C0411,C0412,R1706,E0401 @@ -522,8 +520,25 @@ def pytest_collection_modifyitems(session): def pytest_collection_finish(session): """pytest collection finish""" session.item_count = len(session.items) - print(f"用例收集数量:\t{session.item_count}") - print(f"用例文件数量:\t{len(set([item.fspath for item in session.items]))}") + + pop_skip_case_from_items = session.items[:] + is_skiped_case = False + for item in pop_skip_case_from_items[::-1]: + for mark in item.own_markers: + if mark.name == ConfStr.SKIP.value: + is_skiped_case = True + pop_skip_case_from_items.remove(item) + elif mark.name == ConfStr.SKIPIF.value and mark.args == (True,): + is_skiped_case = True + pop_skip_case_from_items.remove(item) + print( + f"用例收集数量:\t{session.item_count} " + f"({f'剔除skip-xx: {len(pop_skip_case_from_items)}' if is_skiped_case else ''})" + ) + print( + f"用例文件数量:\t{len(set([item.fspath for item in session.items]))} " + f"({f'剔除skip-xx: {len(set([item.fspath for item in pop_skip_case_from_items]))}' if is_skiped_case else ''})" + ) if session.config.option.reruns and not session.config.option.collectonly: print(f"失败重跑次数:\t{session.config.option.reruns}") if session.config.option.max_fail and not session.config.option.collectonly: