4

pytest用于测试。我的测试文件位于一个子目录中tests,它们被命名为Foo.py,Bar.py而不是test_Foo.py,TestFoo.py等。因此,为了确保pytest找到它们,我pytest.ini在项目的根目录中有一个文件,其内容如下:

[pytest]
python_files=tests/*py

如何pytest.ini在 Visual Studio Code 中指定文件的路径,以便vscode-python插件可以正确/成功地发现我的测试文件?无论我尝试什么,我都会得到Test discovery failed,没有给出任何理由。

4

2 回答 2

7

要将 VS Code 设置为使用特定pytest.ini文件,您需要执行以下操作:

  1. 在 VS Code 中打开一个目录ctrl+k > ctrl+o( )
  2. 选择Python 解释器( ctrl+shift+p > Python: Select Interpreter > Python interpreter)
  3. 配置您要使用的测试框架,在本例中为 PyTest (ctrl+shift+p > Python: Configure Tests > Pytest > {pytest rootdir}
  4. 打开在您的工作目录中创建settings.json的目录中生成的文件.vscode/(您在步骤 1 中选择的那个)
  5. 将以下设置添加到文件中(如果您rootdir在配置 pytest 时指定了 a,它可能已经存在):
    "python.testing.pytestArgs": [
        "-c",
        "/path/to/your/pytest.ini"
    ],

而已!VS Code 应该使用您在最后一个参数中指定的 pytest.ini 文件。您可以在此处指定所需的任何 CLI 选项。

资源

于 2020-03-31T21:03:07.343 回答
-1

Pytest 要求测试函数名称以 . 开头test 或结尾test

ini 文件指示 py.test 将所有 *_test.py 文件视为单元测试。

于 2020-01-30T17:45:36.050 回答