PyCharm右键运行unittest单测报builtins.tuple AttributeError问题咨询
问题根因
核心为PyCharm的测试框架自动检测逻辑出错:你编写的是标准unittest框架代码,但PyCharm错误将其识别为Twisted生态的Trial测试框架,调用了Trial专用运行器执行测试,导致标准setUpClass的类属性初始化逻辑未被正确触发,最终抛出属性不存在的报错。
解决方案
方法1:修改项目默认测试运行器(推荐)
- 打开PyCharm设置(快捷键
Ctrl+Alt+S/ macOS为Cmd+,) - 依次进入「工具」→「Python集成工具」
- 找到「测试」板块的「默认测试运行器」下拉选项,手动选择
unittest,取消自动检测 - 保存设置后删除历史生成的错误测试运行配置,重新右键执行测试即可
方法2:仅修改当前单条测试的运行配置
如果不需要全局修改默认框架,可单独调整现有报错的配置:
- 点击PyCharm右上角运行配置的下拉框,选择「编辑配置」
- 在左侧「Python测试」分类中找到当前报错的测试配置条目
- 将配置页顶部的「测试运行器」选项,从自动识别的
Trial手动切换为unittest - 保存后重新运行即可
方法3:清除项目配置缓存(上述方法无效时使用)
如果修改后仍自动生成Trial运行配置,可清除旧的识别缓存:
- 关闭PyCharm
- 删除项目根目录下的
.idea文件夹(操作前可备份你自定义的特殊运行配置、解释器配置等内容) - 重新打开PyCharm导入项目,即可按新的默认框架生成正确配置
内容的提问来源于stack exchange,提问作者xCovelus
相关产品推荐
相关产品推荐

