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文件是否是好的做法。 –