0
我对我的Python库有相当数量的单元测试,其中许多需要运行一些其他非代码文件。例如,要测试文件解析器,我可能需要解析几个示例文件。我在哪里把测试相关的文件放在python中?
所有这些与测试相关的文件当前驻留在与测试代码目录平行的目录中,但我很好奇是否有这样的辅助数据的公认惯例和/或位置?
我对我的Python库有相当数量的单元测试,其中许多需要运行一些其他非代码文件。例如,要测试文件解析器,我可能需要解析几个示例文件。我在哪里把测试相关的文件放在python中?
所有这些与测试相关的文件当前驻留在与测试代码目录平行的目录中,但我很好奇是否有这样的辅助数据的公认惯例和/或位置?
我认为这是一个意见/习惯问题。但是,测试应该是独立的,并且应该形成一个简洁的包,而不需要太多的传出依赖。因此,在你的情况我会组织这样的目录结构:
test files:
tests/
tests resources:
tests/dataSets/testfixture1/
tests/dataSets/testfixture2/
etc.
或
test files:
tests/
tests resources:
tests/testfixture1Data/
tests/testfixture2Data/
etc.
或类似的东西。 这种方式可以保持测试独立,因为结构不会鼓励测试数据重用。此外,一切都位于一个地方,这增加了可读性。
我知道pyinstaller有一个名为tests的目录:https://github.com/pyinstaller/pyinstaller/tree/develop/tests。我认为它可能比这更基本。 – pedram
对于测试代码,我确实有一个名为tests的目录。我很好奇在这里放置非python文件是否是好的做法。 –