在需要告诉测试文件的位置时,如何运行python单元测试?
我试图为一个对文件进行处理的方法编写一个Python在需要告诉测试文件的位置时,如何运行python单元测试?,python,unit-testing,Python,Unit Testing,我试图为一个对文件进行处理的方法编写一个Pythonunittest。这是一个大的二进制文件,所以我不想在setUp()方法中重新创建它的临时版本 对于这样的场景,是否有编写unittest的最佳实践 我是否将文件路径作为参数传递 我是否要从设置中的托管服务下载该文件 还是有一种更被接受的方式将文件路径传递到单元测试中 正确的方法是按照以下思路进行结构化项目: my_project |--src |--foo.py |--tests |--test.py |--data |-
unittest
。这是一个大的二进制文件,所以我不想在setUp()
方法中重新创建它的临时版本
对于这样的场景,是否有编写unittest
的最佳实践
- 我是否将文件路径作为参数传递李>
- 我是否要从
设置中的托管服务下载该文件
- 还是有一种更被接受的方式将文件路径传递到单元测试中
my_project
|--src
|--foo.py
|--tests
|--test.py
|--data
|--file.dat
如果不想将文件签入正在使用的任何源代码管理,只需将其添加到忽略文件中即可
这样,文件的位置就不会改变,您可以从foo.py
和tests.py
运行测试套件时不必传递任意文件名参数。如果文件大小是个问题,那么每次从服务下载它似乎与创建一个临时文件无异。如果文件与测试用例和测试代码位于相同的repo/parentdir/etc中,在测试用例中使用相对文件路径获取它并没有什么错,但它不一定在同一个目录中。或者至少这是我希望避免的。与测试用例相同的目录?那很好。或者你的意思是它不会在每次测试用例运行时都在同一个目录中吗?它与测试用例不在同一个目录中。也不会每次都在同一个目录中。这样,同事也可以在其本地环境中运行
unittest
。您应该与同事协调,并在其中包含代码的文件夹结构上达成一致。感谢您在此处的输入。因为这似乎是一个不错的最佳实践方法,所以我将设计我的测试。谢谢