为了账号安全,请及时绑定邮箱和手机立即绑定

VS Code 未发现 Python 单元测试

VS Code 未发现 Python 单元测试

HUWWW 2022-11-29 17:06:37
有很多类似的问题(例如1、2、3、4、5、6,...),但没有一个问题具有这种问题组合(即在 shell 提示符下工作的 unittest 发现),并且这些问题的解决方案还没有为我工作。当我Python: Discover Tests在 Visual Studio Code 中运行时出现错误未发现测试,请检查测试的配置设置。我的 settings.json 文件看起来像这样{    "python.testing.unittestArgs": [        "--verbose",        "--start-directory",        "./preprocessing/",        "--pattern",        "test_*.py"    ],    "python.testing.pytestEnabled": false,    "python.testing.nosetestsEnabled": false,    "python.testing.unittestEnabled": true}但我知道单元测试是可发现的,因为如果我从项目的根目录运行此命令,所有测试都会被发现并运行:python -m unittest discover --verbose --start-directory "./preprocessing/" --pattern "test_*.py"我的测试显然可以被 Python 的单元测试框架发现,但 VS Code 找不到它们。我该如何解决这个问题?
查看完整描述

3 回答

?
哈士奇WWW

TA贡献1799条经验 获得超6个赞

您需要在项目根目录的 .env 文件中设置 PYTHONPATH。确保包含 src 文件和测试的所有目录都在 pythonpath 上。有关详细信息,请参见此处



查看完整回答
反对 回复 2022-11-29
?
慕雪6442864

TA贡献1812条经验 获得超5个赞

我也为此苦苦挣扎了一段时间。我的解决方案是将类重命名为Test_MyTest(unittest.TestCase)而不仅仅是TestMyTest(unittest.TestCase. 这与我在 VSCode 中配置的“test_*.py”文件名匹配,但我不知道文件名和类名是否需要匹配。



查看完整回答
反对 回复 2022-11-29
?
一只斗牛犬

TA贡献1784条经验 获得超2个赞

我会尝试在没有--verbose. 这不是必需的,因为扩展正在为您进行发现,而且我敢打赌它的额外输出会破坏某些东西。



查看完整回答
反对 回复 2022-11-29
  • 3 回答
  • 0 关注
  • 331 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号