繁体   English   中英

如何从 pytest 中的 class 内部执行测试?

[英]How to execute test from inside a class in pytest?

我正在尝试使用 pytest 框架运行 Python 中的 class 内部的测试方法。

不知道出了什么问题,但测试没有被选中。 我确保 package 名称、模块名称、class 名称和 function 名称以“test”开头。

init .py 中没有内容,我不确定是否需要在此文件中包含任何内容以确保选择 class 下的测试。

我正在使用的解释器显示在屏幕截图中。 另外,我添加了一个显示代码的屏幕截图,以便更容易理解目录结构。

我访问了几个博客和这个,但没有一个能帮助我解决这个问题。

能否请你帮忙?

在此处输入图像描述

在此处输入图像描述

默认情况下,pytest 期望测试类以CamelCase命名: TestDemo ,而不是test_demo 您的名称 rest 遵循正确的默认架构,因此如果您将 class 名称更改为TestDemo , pytest 应该能够找到它。

pytest docs on test discovery:https://docs.pytest.org/en/stable/example/pythoncollection.html

要使用 pytest 在 class 中测试 function,我们可以使用以下命令:

$ pytest -v /path/to/test_file.py::ClassName::test_function_name

记得使用“ ::

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM