如何让 PyTest 在 Visual Studio 中工作

问题描述 投票:0回答:4

我想将

PyTest
Visual Studio
集成,以便我的测试显示在测试资源管理器中。到目前为止,我还没有找到任何方法来做到这一点,而这里的一些旧帖子表明人们以前已经做到了。据我所知,正如这篇文章所建议的,有人应该为 PyTest 开发一个适配器接口。然而,其他帖子像这样表明其他人成功地使其发挥作用。但这两个到目前为止还没有为我工作。有办法让它工作吗?

python visual-studio unit-testing testing pytest
4个回答
4
投票

在 Visual Studio 中添加了对 Pytest 的支持

Visual Studio 2019 (16.3 Preview 2)

您必须通过右键单击项目并转到“属性”->“测试”来更改项目的测试框架

您可以将 pytest.ini 添加到您的项目中以进一步配置 pytest。

来自 MS 本身的更多信息:https://devblogs.microsoft.com/python/whats-new-for-python-in-visual-studio-16-3-preview-2/


1
投票

首先你必须确保当前配置的Python环境中已经安装了pytest。 然后你必须像下面这样配置它: 可以通过将必要的选项添加到用户或工作区设置文件 settings.json 的以下部分来传递 pytest 的命令行选项: 将选项添加为单独的项目,如下所示:

"python.unitTest.pyTestArgs": [
    "--exitfirst",
    "--verbose"
],

请告诉我它是否运作良好


0
投票

首先在本地计算机上安装 Pytes。 如果您的 visula studio 已经与 Python 集成,并且您的测试也使用 Pytest 那么您无需担心,您的 Visual Studion 将使用 Pytest。


0
投票

根据其他答案,请确保您已安装 PyTest 包。

我发现,如果我在安装 PyTest 之前创建了一个项目,我需要进入这些项目的 .pyproj 文件并添加以下行 before

</PropertyGroup>
:

<TestFramework>Pytest</TestFramework>
<UnitTestPattern>test*.py</UnitTestPattern>
<UnitTestRootDirectory>.</UnitTestRootDirectory>

并保存更改。当文件名以“test”开头并且单元测试函数名称以“test”开头时,测试资源管理器就能够自动检测单元测试文件,例如文件名: test_flowCalc.py ,包含单元测试,例如: def test_freeze_temp_calc():

我还发现 Visual Studio 每隔几秒扫描一次测试文件和测试函数,因此,如果您正在创建单元测试,它们不会出现在测试资源管理器列表中,直到您保存单元测试。听起来很明显,但大多数阅读本文的人可能是 PyTest 的新手,并且可能对 Visual Studio 缺乏经验,因此尝试管理期望。

© www.soinside.com 2019 - 2024. All rights reserved.