You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何运行Python项目多目录下的unittest测试用例?

运行所有测试用例的解决方案

针对你项目的目录结构,有几种方法可以一次性运行所有测试用例:

方法一:命令行指定多个发现路径

直接在命令行中通过多次调用discover子命令,分别指定根目录和子模块目录作为测试起始路径:

python -m unittest discover . "test_*.py" discover my_submodule "test_*.py"

或者用更清晰的参数形式指定起始目录和匹配模式:

python -m unittest discover -s . -p "test_*.py" discover -s my_submodule -p "test_*.py"

方法二:编写测试入口脚本

在项目根目录创建run_all_tests.py文件,通过代码手动加载两个目录下的所有测试用例:

import unittest

def main():
    loader = unittest.TestLoader()
    test_suite = unittest.TestSuite()

    # 加载根目录test文件夹的测试
    root_tests = loader.discover('.', pattern='test_*.py')
    test_suite.addTests(root_tests)

    # 加载my_submodule下test文件夹的测试
    submodule_tests = loader.discover('my_submodule', pattern='test_*.py')
    test_suite.addTests(submodule_tests)

    # 执行测试
    runner = unittest.TextTestRunner(verbosity=2)
    runner.run(test_suite)

if __name__ == '__main__':
    main()

运行该脚本即可执行所有测试:

python run_all_tests.py

方法三(可选):调整目录结构

如果允许修改项目布局,可将my_submodule/test目录移动到项目根目录下并重命名(比如test_submodule),避免与原test目录冲突。之后直接运行python -m unittest discover .就能自动扫描所有测试文件。

内容的提问来源于stack exchange,提问作者Guglie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 09:36:10