32
社区成员
发帖
与我相关
我的任务
分享比如目录结构如下
tests/
|-- foobar
| |-- test_foobar_01.py
| |-- test_foobar_02.py
| '-- test_foobar_03.py
当指定的重复路径为文件级别时,默认支持执行多次,如下,执行了两次
$ pytest foobar/test_foobar_01.py foobar/test_foobar_01.py
============================= test session starts =============================
platform win32 -- Python 3.9.6, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
rootdir: G:\src\blog\tests
plugins: allure-pytest-2.9.43, caterpillar-pytest-0.0.2, forked-1.3.0, rerunfailures-10.1, xdist-2.3.0
collected 2 items
foobar\test_foobar_01.py ..
============================== 2 passed in 0.02s ==============================
指定的重复路径为目录时,默认只会执行一次,如下,只执行了一次
$ pytest foobar foobar
============================= test session starts =============================
platform win32 -- Python 3.9.6, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
rootdir: G:\src\blog\tests
plugins: allure-pytest-2.9.43, caterpillar-pytest-0.0.2, forked-1.3.0, rerunfailures-10.1, xdist-2.3.0
collected 3 items
foobar\test_foobar_01.py . [ 33%]
foobar\test_foobar_02.py . [ 66%]
foobar\test_foobar_03.py . [100%]
============================== 3 passed in 0.03s ==============================
当指定的路径为目录时,如果希望也执行多次,需要使用 --keep-duplicates参数,如下目录中的用例执行了2次
$ pytest foobar foobar --keep-duplicates
============================= test session starts =============================
platform win32 -- Python 3.9.6, pytest-6.2.5, py-1.10.0, pluggy-1.0.0
rootdir: G:\src\blog\tests
plugins: allure-pytest-2.9.43, caterpillar-pytest-0.0.2, forked-1.3.0, rerunfailures-10.1, xdist-2.3.0
collected 6 items
foobar\test_foobar_01.py . [ 16%]
foobar\test_foobar_02.py . [ 33%]
foobar\test_foobar_03.py . [ 50%]
foobar\test_foobar_01.py . [ 50%]
foobar\test_foobar_02.py . [ 50%]
foobar\test_foobar_03.py .
============================== 6 passed in 0.04s ==============================