Pytest 为每个测试发布测试报告,而不是所有测试只发布 1 个

问题描述

我有一个 pytest 套件,它使用 Selenium 进行 UI 测试,测试可以按顺序或并行运行。当我按顺序运行测试时,报告会正确发布到 Slack,即在所有测试完成后发布一次;但是,当我并行运行测试时,每次测试完成后都会发布一份报告。以下是我的 conftest.py 的样子:

   @pytest.fixture
   def slack_flag():
     return pytest.config.getoption("-I")

   def pytest_addoption(parser):
     parser.addoption("-I","--slack_flag",dest="slack_flag",default="N",help="Post the test report on slack: Y or N")

   def pytest_terminal_summary(terminalreporter,exitstatus,config):
     if config.getoption("-I").lower() == 'y':
       //slack code logic here...

我也尝试过使用 pytest_sessionfinish(session,exitstatus): 但它也有相同的行为,即它在每次测试完成后发布报告给 slack,而不是在整个测试运行完成后发布一次。上面有什么我遗漏的地方,或者有什么我可以实施的解决方法解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)