使用标准目录结构运行单元测试
考虑以下 Python 模块的流行目录结构:
new_project/ antigravity/ antigravity.py test/ test_antigravity.py setup.py etc.
问题出现了:我们如何执行测试?虽然简单地从测试目录运行 python test_antigravity.py 很诱人,但由于导入路径中缺少该模块,这将失败。
利用unittest CLI
推荐的方法是利用 unittest 命令行界面 (CLI),它会自动使用必要的内容来扩充 sys.path
运行单个测试
例如,要运行单个测试模块 (test_antigravity.py),请导航到 new_project 目录并执行:
python -m unittest test.test_antigravity
导入模块
对于像提供的这样的目录结构,通过在两个目录中包含 __init__.py 文件将 antigravity 和 test 转换为包是至关重要的。这允许在测试模块中无缝导入反重力包及其模块。
运行所有测试
要执行所有测试,请利用测试发现,它会自动识别并运行所有测试模块和包(名称以 test* 开头)。导航到 new_project 目录并运行:
python -m unittest discover
用户说明
为了简化用户的流程,请提供清晰的说明:
To run the unit tests: ``` cd new_project```
以上是如何在标准Python项目目录结构中运行单元测试?的详细内容。更多信息请关注PHP中文网其他相关文章!