gpt4 book ai didi

pytest - pytest 如何在测试文件夹中找到没有 __init__.py 的测试文件?

转载 作者:行者123 更新时间:2023-12-02 07:15:02 24 4
gpt4 key购买 nike

根据pytest good practices doc您的测试目录中不应该有 __init__.py

如果我删除 __init__.py 文件,pytest 不会使用此命令找到任何测试:

PYTHONPATH=../. py.test -m "slow"--color=yes -svv -f测试(使用shtests/run_slow_tests.sh调用)

我是一个相当有经验的 pytest 用户,但我仍然不知道如何在没有 __init__.py 的情况下运行我的测试。如果测试文件夹中没有它们,我如何运行测试?

最佳答案

Pytest 依赖于魔术命名来进行测试发现。理想情况下,所有测试文件都必须以 test_ 开头,例如,您需要使用 test_slow.py 而不是 slow.py。测试方法也必须以 test_ 开头,例如def test_a():, def test_b(): 等。如果满足所有这些条件,则只需在测试文件夹中运行 pytest 即可执行test discovery并运行所有发现的测试。

如果您的文件包含test_前缀,那么您应该将文件名作为显式参数传递,即pytest Slow.py.

如果测试方法位于类内部,则类名必须Test开头或在某处包含Test在名字里。如果没有,那么您将必须显式指定该类,例如与:

    pytest -s -v slow.py::CreateAndSubmitForm

关于pytest - pytest 如何在测试文件夹中找到没有 __init__.py 的测试文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35179231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com