跳转到主要内容

pytest插件,用于按特定顺序运行测试

项目描述

pytest-order - 一个pytest插件,用于排序测试执行

PyPI version Testsuite DocBuild codecov Python version

pytest-order 是一个 pytest 插件,允许您自定义测试运行的顺序。它使用 order 标记来定义特定测试何时运行,可以通过使用序号或指定与其他测试的关系来实现。

pytest-orderpytest-ordering 的一个分支,提供了诸如相对于其他测试进行排序等额外功能。

pytest-order 与 Python 3.7 - 3.12 兼容,对于所有 Python 3.9 以下版本,需要 pytest 版本 >= 5.0.0,对于 Python >= 3.10,需要 pytest >= 6.2.4。 pytest-order 在 Linux、macOS 和 Windows 上运行。

文档

除了概述之外,以下信息也是可用的

功能

pytest-order 提供以下功能

概述

(改编自原始项目)

你是否曾想过轻松地运行你的某个测试,在运行任何其他测试之前?或者运行一些最后的测试?或者在这个测试之前运行那个测试?或者确保这个测试组在另一个测试组之后运行?

现在你可以做到了。

使用以下命令安装

pip install pytest-order

这定义了你可以使用不同属性在你的代码中使用 order 标记。

例如,以下代码

import pytest

@pytest.mark.order(2)
def test_foo():
    assert True

@pytest.mark.order(1)
def test_bar():
    assert True

产生以下输出

$ pytest test_foo.py -vv
============================= test session starts ==============================
platform darwin -- Python 3.7.1, pytest-5.4.3, py-1.8.1, pluggy-0.13.1 -- env/bin/python
plugins: order
collected 2 items

test_foo.py:7: test_bar PASSED
test_foo.py:3: test_foo PASSED

=========================== 2 passed in 0.01 seconds ===========================

贡献

欢迎贡献。可以使用 tox 运行测试,请在提交拉取请求之前确保覆盖率至少保持不变。

许可证

MIT 许可证的条款下分发,pytest-order 是免费和开源软件。

历史

这是对 pytest-ordering 的分支。该项目不再维护,其中一些有用的 Pull Request 现已集成到 pytest-order 中。该想法和大部分初始代码由该插件的作者 Frank Tobia 创建,以及 贡献者

尽管来源于 pytest_ordering,但由于标记名称已更改(使用 order 而不是 run),pytest-order 并不与 pytest-ordering 兼容。在 pytest_ordering 中定义的所有额外标记都已集成到 order 标记中(有关理由,请参阅 此问题)。

相对于其他测试和所有配置选项的排序功能在已发布的 pytest-ordering 版本中不可用。然而,这些功能中的大部分都源自或受到 issues 和 pull requests 的影响,这些 issues 和 pull requests 已存在于 pytest-ordering 中。

项目详情


下载文件

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

源代码分发

pytest_order-1.3.0.tar.gz (47.5 kB 查看哈希值)

上传时间 源代码

构建分发

pytest_order-1.3.0-py3-none-any.whl (14.6 kB 查看哈希值)

上传时间 Python 3

支持者

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