跳转到主要内容

为pytest提供类型安全且易于维护的测试夹具和参数化。

项目描述

pytypest

为pytest提供类型安全且易于维护的测试夹具和参数化。

特性

  • 100% 类型安全。
  • 出色的IDE集成,定义查找总是带您到正确的地方。
  • 即使是许多参数,测试参数化也是可读的。
  • 与pytest即插即用集成。
  • 无供应商锁定,您可以使用您需要的功能,而不必接触其他功能。
  • 夹具可以被缓存,并且您可以控制它们缓存多长时间。
  • 夹具可以接受参数。

如果您想了解更多关于这个项目为何诞生的信息,请查看 动机

安装

python3 -m pip install pytypest

用法

夹具是常规辅助函数,它们 yield 它们的结果,并在之后执行清理操作

from typing import Iterator
from pytypest import fixture

@fixture
def get_user(anonymous: bool) -> Iterator[User]:
    u = User(anonymous=anonymous)
    u.save()
    yield u
    u.delete()

def test_user() -> None:
    u = get_user(anonymous=False)
    assert u.anonymous is False

与内置pytest夹具相比,这些夹具是明确的、类型安全的、可以接受参数、支持IDE中的定义查找,并且可以作为上下文管理器使用。并且像pytest夹具一样,它们可以被缓存,并且可以作用域到模块或整个会话。

文档 中了解更多信息: pytypest.orsinium.dev.

项目详情


下载文件

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

源分发

pytypest-1.0.1.tar.gz (23.8 kB 查看哈希值)

上传时间

构建分发

pytypest-1.0.1-py3-none-any.whl (16.5 kB 查看哈希值)

上传时间 Python 3

由以下支持

AWSAWS 云计算和安全赞助商 DatadogDatadog 监控 FastlyFastly CDN GoogleGoogle 下载分析 MicrosoftMicrosoft PSF赞助商 PingdomPingdom 监控 SentrySentry 错误日志 StatusPageStatusPage 状态页面