myproject/
bin/
myscript
mypackage/
__init__.py
core.py
tests/
__init__.py
test_mypackage.py
setup.py
Run Code Online (Sandbox Code Playgroud)
测试脚本myscript的最佳方法是什么?
从SO研究来看,似乎我发现的唯一答案是在测试中编写一个名为test_myscript的测试,并使用像
import subprocess
process = subprocess.Popen('myscript arg1 arg2')
print process.communicate()
Run Code Online (Sandbox Code Playgroud)
在我的测试用例中运行脚本然后测试结果.有没有更好的办法?或者针对不同方式的任何其他建议?我应该将测试套件放在bin/tests或mypackage/tests中吗?
我不相信有任何关于放置位置的“最佳实践” tests
。看看有多少不同的意见:Python单元测试去哪儿了?
tests
我个人在顶层有一个且唯一的目录,靠近你的bin
和mypackage
目录 - 例如django就有。
要运行bin
脚本并获取结果,您可以使用:
子流程(正如您所提到的),但使用check_output
:
import subprocess
output = subprocess.check_output("cat /etc/services", shell=True)
Run Code Online (Sandbox Code Playgroud)test command-line scripts
- 看起来像是工作的工具希望有帮助。
归档时间: |
|
查看次数: |
550 次 |
最近记录: |