在 Pytest 中显示完整计划

Show full plan in Pytest

我正在 Pytest 中寻找一种方法来显示完整的测试和夹具计划,而不是仅仅通过 --collect-only 列出测试用例。

这是我现在能得到的最好的:

TestClass1
  TestCase1
  TestCase2
TestClass2
  TestCase3
  TestCase4

这就是我要找的(应该符合执行顺序):

Fixture1_Setup_ModuleScope
  Fixture2_Setup_ClassScope
    TestClass1
      Fixture3_Setup_FunctionScope
        TestCase1
      Fixture3_Teardown_FunctionScope
      TestCase2
  Fixture2_Teardown_ClassScope
  TestClass2
    TestCase3
    TestCase4
Fixture1_Teardown_ModuleScope

我四处寻找这样的 Pytest 插件,none 似乎提供了这个。甚至不作为结果的解析,更不用说在没有 运行 测试的情况下可以生成的东西了。我知道 Pytest 测试不需要,但这是我在我们较旧的内部测试框架之一中学会喜欢的东西,如果只是为了用现实验证我的意图的话。

我是否遗漏了一些明显的解决方案?我怎样才能做到这一点?

你试过了吗pytest --setup-plan.

show what fixtures and tests would be executed but don't execute anything.

pytest --setup-plan
# ...                                                                                                                                        
# assert_test.py 
#         assert_test.py::TestTest::test_test
# click_test.py 
#         click_test.py::test_echo_token
# fixture_test.py 
#         SETUP    F env['dev']
#         SETUP    F folder['dev_data']
#         fixture_test.py::test_are_folders_exist[dev-dev_data] (fixtures used: env, folder)
#         TEARDOWN F folder['dev_data']
#         TEARDOWN F env['dev']