Pact Python
Pact 是事实上的 API 契约测试工具。用快速、可靠且易于调试的单元测试替代昂贵且脆弱的端到端集成测试。
为什么使用 Pact? 使用 Pact 进行契约测试可以让您:
观看我们的系列视频,了解端到端集成测试的问题以及契约测试如何帮助解决这些问题。 |
文档
本自述文件提供了 Pact Python 库的高级概述。有关详细文档,请参阅 完整的 Pact Python 文档。有关 Pact 和整个生态系统的更一般概述,请参阅 Pact 文档。
API 文档是从代码中的文档字符串生成的,您可以在这里查看。请注意,目前只有 [pact.v3
模块][pact.v3] 有详细的文档。
需要帮助
- 加入 我们的社区 Slack 工作区。
- Stack Overflow 是提问的好地方。
- 在 Twitter 上说 👋:@pact_up
- 在 GitHub Discussions 上加入讨论 💬
- 在 GitHub 上提出问题
V3 预览版
Pact Python 目前正在进行重大重写,将在 3.0.0
版本中发布。这次重写将用 Rust 后端替换现有的 Ruby 后端,这将带来显著的性能提升,并允许我们在未来支持更多功能。您可以在 GitHub 上的这个跟踪问题 中找到有关此重写的更多信息。
您可以通过使用 [pact.v3
模块][pact.v3] 来预览新版本。新版本尚未功能完备,可能会发生变化。尽管如此,我们非常希望得到您对新版本的反馈:
- 如果您发现任何问题,请在 GitHub 上提出问题。
- 如果您有任何反馈,请在 GitHub Discussions 或 Pact Foundation Slack 的
#pact-python
频道中加入讨论。
安装
可以从 PyPi 安装最新版本的 Pact Python:
pip install pact-python
# 🚀 现在开始编写一些测试!
要求
Pact Python 尝试支持 Python 软件基金会仍在支持的所有 Python 版本。较旧的 Python 版本可能可以工作,但不受官方支持。
为了支持最广泛的用例,Pact Python 尽量对其使用的库版本施加最少的限制。
不跟踪
为了获得更好的统计数据,了解谁在使用 Pact,我们有一个匿名跟踪事件,在首次安装 Pact 时触发。我们跟踪的只有您的操作系统类型和正在安装的包的版本信息。此请求不会发送任何个人身份信息。您可以通过设置环境变量 PACT_DO_NOT_TRACK=1
来禁用跟踪:
贡献
我们欢迎以多种形式对 Pact Python 库做出贡献。有很多方法可以提供帮助,从编写代码,提供新示例,编写文档,到测试库和提供反馈。有关更多信息,请参阅贡献指南。