跳转到主要内容

pytest插件,提供检查pytest是否正在运行的函数。

项目描述

https://img.shields.io/github/actions/workflow/status/adamchainz/pytest-is-running/main.yml?branch=main&style=for-the-badge https://img.shields.io/badge/Coverage-100%25-success?style=for-the-badge https://img.shields.io/pypi/v/pytest-is-running.svg?style=for-the-badge https://img.shields.io/badge/code%20style-black-000000.svg?style=for-the-badge pre-commit

pytest插件,提供检查pytest是否正在运行的函数。

未维护 (2024-01-02)

我停止维护这个包,因为它在检查pytest是否已导入方面没有提供太多价值。

import sys

if "pytest" in sys.modules:
    ...

在我看到的每个项目中,pytest仅在运行时才被导入。


正在处理Django项目吗? 查看我关于如何提高开发体验的书籍 Boost Your Django DX,该书籍涵盖了多种方法。我在编写这本书时创建了pytest-is-running!


安装

安装方式

python -m pip install pytest-is-running

支持Python 3.8至3.12。

用法

当您运行 pytest 时,pytest将自动找到插件并使用它。您可以使用 is_running() 函数检查pytest是否正在运行。

import pytest_is_running


if pytest_is_running.is_running():
    ...

如果pytest没有运行,此包会避免导入pytest,这样您就不会在非测试路径中承担这个开销。

此包尽可能早地注册其在pytest过程中的插件钩子,因此它应该在您的任何非测试模块之前加载。

理由

此插件是重新实现pytest文档中的模式的替代方案。作为一个插件,它比conftest.py或项目中任何其他代码先加载。这使得它成为检查pytest是否正在运行的更健壮的方法。

上游问题#9502讨论了向pytest添加功能。它还涵盖了通常“足够好”的替代方案——简单地检查pytest是否已导入

"pytest" in sys.modules

如果您在测试运行之外导入pytest,这将不会完全准确,但这并不常见。您可能更喜欢使用这种更简单的技术而不是此插件。

项目详情


下载文件

下载适用于您的平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。

源分布

pytest-is-running-1.5.1.tar.gz (4.5 kB 查看哈希值)

上传时间

构建分布

pytest_is_running-1.5.1-py3-none-any.whl (4.5 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面