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

Django中Pytest无法识别部分已安装应用内测试的问题排查

解决Pytest无法识别Django应用file_upload测试的问题

以下是几个排查和解决方向:

  • 检查测试文件的目录结构
    确认test_endpoints.py是否放在file_upload应用的tests子目录下,且该目录包含__init__.py文件。正确的结构应该是:

    file_upload/
        __init__.py
        tests/
            __init__.py
            test_endpoints.py
    

    缺少tests目录或__init__.py会导致pytest无法识别该模块下的测试。

  • 直接指定测试文件路径排查
    执行以下命令,强制指定测试文件路径:

    pytest file_upload/tests/test_endpoints.py
    

    如果能正常收集到测试,说明是测试路径发现的问题;如果仍无测试被收集,检查文件内是否存在语法错误,或者测试函数是否符合命名规则。

  • 验证测试函数命名规范
    pytest默认只收集命名以test_开头的函数,以及类名以Test开头且内部方法以test_开头的测试类。确保test_endpoints.py里的测试代码符合这个规则,比如:

    def test_upload_success():
        # 测试逻辑
        pass
    
    class TestFileEndpoints:
        def test_download_valid(self):
            # 测试逻辑
            pass
    
  • 确认INSTALLED_APPS配置无误
    再次检查config.settings.test中的INSTALLED_APPS,确保'file_upload'拼写正确(无大小写错误、额外空格),且确实添加到了列表中。

  • 清除pytest缓存
    pytest的缓存可能导致测试发现异常,执行以下命令清除缓存后重新运行:

    pytest --cache-clear
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.30 01:37:14