由于缺少通过测试数据目录配置的测试数据,未找到Pytest fixture

2024-09-30 16:24:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试运行测试,但是我遇到了一个错误,并且对于如何修复它感到有点困惑。所有测试都在目录中作为参数,但是由于我没有给它参数,所以我得到了以下错误:

  E       fixture 'shared_datadir' not found

所以我只是想添加一个fixture,但后来我注意到前开发人员在test目录的init.py中有以下代码:

from pathlib import Path


TEST_DATA_DIR = Path("<old path to experiment data>")

因此,我的问题是,如果有,我如何将其更改为包含测试数据的目录,并运行所有测试?以下是其中一项测试的示例(如果有帮助):

    @pytest.fixture(scope="function")
def paired_imgs(self, shared_datadir):

    return pio.load_tiff_as_hyperstack(
        (
            shared_datadir
            / "experiments"
            / "2017_02_22-HD233_SAY47"
            / "2017_02_22-HD233_SAY47.tif"
        ),
        manual_metadata=(
            shared_datadir
            / "experiments"
            / "2017_02_22-HD233_SAY47"
            / "2017_02_22-HD233_SAY47-frame_map.csv"
        ),
        mvmt_metadata=(
            shared_datadir
            / "experiments"
            / "2017_02_22-HD233_SAY47"
            / "2017_02_22-HD233_SAY47-mvmt.csv"
        ),
    )

Tags: csvpath目录参数错误notfixtureshared