VS Code 未发现 Python 单元测试

有很多类似的问题(例如123456,...),但没有一个问题具有这种问题组合(即在 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 找不到它们。我该如何解决这个问题?


HUWWW
浏览 332回答 3
3回答

哈士奇WWW

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

慕雪6442864

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

一只斗牛犬

我会尝试在没有--verbose. 这不是必需的,因为扩展正在为您进行发现,而且我敢打赌它的额外输出会破坏某些东西。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python