@contract-case/contract-case-jest

中文文档
0.31.4发布于 2026/10/08BSD-3-ClauseTypeScriptCommonJS近 30 天下载 123.5万

Jest 个案合同测试套件

中文使用文档
文档目录5 节
  1. 洞穴和限制
  2. 我很好,所有的提醒, 我怎么开始?
  3. 为条约使用者
  4. 路线图
  5. 释放

合同个案合同测试框架

Build and test Coverage Status Known Vulnerabilities

npm

Case

Gohsantosadrive 在弗拉蒂肯上创建的短写贴纸

读取 这里的文档。 。 。 .

ContractCase是下一代消费者驱动的合同测试框架,建筑 从保持优秀的 条约 合同测试 框架。 我们相信合同测试是获得 对您的应用程序和服务部署信心 .

欢迎反馈 gi来啊!

洞穴和限制

ContractingCase现已可用,应该为客户端和服务器驱动的 http/https 工作 合同。 对 ContractCase API / DSL 和(特别是) 命名的反馈 公约非常受欢迎。 然而,应铭记以下几点:

  1. ContractCase目前仅可用Javascript / Typescript和Java. 后期将加入对Python,C#和Go的支持. 目前没有计划增加其他语言.
  2. ContractCase目前不支持合并合同. 这意味着每项合同必须在一份测试文件中界定(每份合同).
  3. ContractCase目前只与Jest(js/ts)和JUnit(java)兼容.
  4. ContractCase目前只得到极少的经纪人支持. 它支持《公约》 经纪人,虽然契约经纪人不能签订合同 案例合同 在UI.

虽然测试覆盖率很高,而且已经非常小心地确保结果正确,但可能仍然有虫子. 遇到问题请开口.

你可以通过阅读 维护者待办事宜列表这些告诫将随着进展而更新.

我很好,所有的提醒, 我怎么开始?

如果你想马上开始 我们建议从 界定合同 文档.

npm install --save-dev @contract-case/contract-case-jest

您可能还需要开玩笑:

npm install --save-dev jest

为条约使用者

ContractingCase的理念与Contracting非常相近,使Contracting 兼容性, ContractCase 与契约经纪人合作. 我们 建议:

有一些关键区别 - ContractCase更容易扩展,可以表达 更复杂的合同,可以在服务器侧或服务器侧定义合同 客户一方(虽然总是消费者驱动的 - 你的消费者只是 可能会消耗 请求) (中文(简体) ). 见 为条约用户服务 以便进行更多的讨论.

路线图

  1. 契约均等(完成)
  2. 服务器驱动合同(完成)
  3. 插件和任意扩展( 完成)
  4. 支持 java( 完成)
  5. 基于职能的支助合同(完成)
  6. 文件(正在编写)
  7. gRPC 匹配器
  8. 支持 Python, C# 和 Go 键
  9. 任意组合请求/答复对等,附带包括本地SQS支持
  10. 通过 API

关于行进图的 gory 细节, 您可以看到执行笔记本 / 待办事宜列表 这里

释放

合同 语义版本,附加两项限制:

  1. 在 1.0.0以前,ContractCase在Beta,API被认为不稳定. 间断变化将用小字表示 即0.2.0和0.3.0不完全兼容.
  2. 在 1.0.0 之前,补丁版本将总是后向相容.

断裂变化将永远在 更改日志。 。 。 .

版本与发布记录

@contract-case/contract-case-jest 共发布 56 个版本,首次发布于 2023/05/03;过去 12 个月发布了 13 个版本。

版本发布日期距今
0.31.4latest2026/10/081 个月前
0.31.32026/10/021 个月前
0.31.22026/08/312 个月前
0.31.12026/08/312 个月前
0.31.02026/08/282 个月前
0.30.22026/08/282 个月前

关于 @contract-case/contract-case-jest 的常见问题

@contract-case/contract-case-jest 是什么?

Jest 个案合同测试套件

如何安装 @contract-case/contract-case-jest?

在项目目录运行 npm install @contract-case/contract-case-jest,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:jest(^29.4.3 || ^30.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 ContractCase,可以用 npx ContractCase 直接运行。

@contract-case/contract-case-jest 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@contract-case/contract-case-jest 支持 ESM 还是 CommonJS?

以 CommonJS 形式发布,可以直接 require();在 ES Module 项目中也可以用 import 引入(Node.js 会把 module.exports 作为默认导出)。

@contract-case/contract-case-jest 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.0.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@contract-case/contract-case-jest 可以商用吗?

@contract-case/contract-case-jest 使用 BSD-3-Clause 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。另外不得用原作者名义为衍生产品背书。以上为概括,不构成法律意见,请以许可原文为准。

@contract-case/contract-case-jest 的下载量有多少?

根据 npm 官方下载统计,@contract-case/contract-case-jest 在 2026/10/11 – 2026/11/09 这 30 天内被下载 1,234,621 次,日均约 41,154 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@contract-case/contract-case-jest 还在维护吗?

最新版本 0.31.4 发布于 2026/10/08(1 个月前);至今共发布 56 个版本,其中过去 12 个月发布了 13 个;首次发布于 2023/05/03。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。