SuperAPI AI 工具集

jp-validate

测试与质量

查看项目

更新于 10-16 04:38

技能介绍

用途

jp-validate 用于测试一个由 jp-executor 已经构建完成的 Juspay 支付集成。测试的驱动来源包括:{doc_workspace} 中的规划产物(jp-prd 的 PRD、jp-architecture 的设计与 task-checklist.md),以及代码库中实际存在的内容。

主要能力

  • 文档锚定:在编写测试时,通过 docs-mcp 重新获取权威的 Juspay 文档页面(记录在架构文档 / task-checklist.md 的 doc-refs 中),以确认准确的字段名、请求/响应结构、错误码以及测试卡/VPA,绝不凭记忆断言。
  • 技术栈镜像:检测仓库现有的测试框架与约定(目录布局、命名、fixtures),并用该框架编写测试。仅当没有运行器时才使用内联 curl/bash。未经检查点确认,不会强行引入仓库未使用的新框架。
  • 测试质量 DoD:每个持久化测试都要求确定性、隔离性、显式性和聚焦性——不使用硬等待/sleep,不依赖测试间顺序,不使用不受控的随机数据,断言在测试体内可见。参见 references/payment-test-matrix.md。
  • 密钥边界:凭据(API 密钥、webhook 认证)仅从 .env/密钥存储读取,并通过导出的环境变量传给测试——绝不内联在测试文件、报告、日志或命令输出中。任何产物中都不出现密钥值。
  • 范围取交集:只测试架构纳入范围 ∩ jp-executor 实际构建 ∩ 环境支持的内容。绝不为未构建的工作或范围外的方法编造测试。
  • 拆分仓库感知:前端与后端可能位于不同仓库。在拆分运行中,只验证当前存在的一侧,并添加契约一致性检查(该侧遵守 Cross-Side Contract);跨侧端到端交易无法驱动(另一仓库缺失)→ 记录为有文档说明的手动项/缺口。参见 references/split-integration.md。

使用方式

工作区 {doc_workspace} 为 {project-root}/docs/juspay/,读取 prd.md、architecture.md、task-checklist.md、integration-summary.md(如存在)以及传入的 handoff-<this_side>.md(如存在,用于契约);将测试代码写入用户代码库,更新 task-checklist.md 中的测试任务状态值,并将 test-report.md 写回 {doc_workspace}。它不写入或修改 integration-summary.md 或 handoff-*.md——那些属于 jp-executor。本技能没有自己的配置文件,不进行语言/名称解析,只读取用户仓库和上游产物。

激活时,技能会简要向用户说明:本技能测试 jp-executor 构建的 Juspay 集成,适配仓库现有测试栈并编写 test-report.md,没有设置文件。随后加载 ./steps/step-01-init.md,该步骤以已构建的集成为前提进行门禁。

执行步骤链:

  • step-01-init.md — 门禁(要求已构建的集成),加载产物,检测测试栈,重新扫描实际构建内容 → 测试目标清单,复用 juspay-mcp 模式。(始终执行)
  • step-02-test-design.md — 基于风险的测试设计:取范围内 × 已构建 × 环境支持的交集,分配 P0–P3,为每项选择级别 + 执行模式(框架原生文件 vs 内联),构建可追溯性矩阵,环境预检,对计划设置检查点。(始终执行)
  • step-03-backend-tests.md — 订单/会话创建、状态 + 对账、webhook 签名 + 幂等性、退款/打款、约束边界、错误码路径。(仅当构建了后端/API 表面时)
  • step-04-frontend-sdk-tests.md — Web 交易驱动(测试卡/VPA)+ 返回 URL/对账检查;移动端/原生手动指南。(仅当构建了 Web/SDK/原生表面时)
  • step-05-report.md — 可追溯性矩阵、PASS/CONCERNS/FAIL 质量门禁、支付 NFR 检查、集成阶段确认;写入 test-report.md,最终确定测试任务状态。(始终执行)

步骤 3 和 4 为条件执行。每个步骤开头都有 APPLICABILITY 门禁,当测试目标清单中没有该类表面时会自动跳过——纯后端集成跳过前端/SDK;纯 Web/SDK 集成跳过后端专属项。只测试本集成实际构建的内容。

本技能以行动为导向:编写并运行真实测试,但在有风险/外部操作前设置检查点(启动开发服务器、运行实时交易、任何涉及资金流动或触及生产的操作)。生产环境为强制要求——针对生产运行;不要询问使用哪个环境,仅当用户明确且未受提示地要求时才使用非生产环境。MCP 返回的 dummy/test 网关可用于集成测试。

juspay-mcp 受认证保护且为可选;复用上游技能已记录的模式(参见 references/juspay-mcp.md),不要重复询问。每个来自 juspay-mcp 的数据都有手动回退方案,因此流程不会阻塞。

适用场景

适用于 jp-executor 已完成 Juspay 支付集成构建之后,需要对该集成进行测试与验证的场景,包括后端/API 表面、Web/SDK/原生表面,以及前后端拆分仓库的情况。

限制

  • 要求已构建的集成作为前提(step-01 门禁)。
  • 只测试架构范围内、实际已构建且环境支持的内容。
  • 拆分仓库时无法驱动跨侧端到端交易,只能记录为手动项/缺口。
  • 不写入或修改 integration-summary.md 或 handoff-*.md。
  • 没有自己的配置文件。
  • 生产环境为强制要求,非生产环境仅在用户明确要求时使用。
  • 关于具体收费、价格、平台支持范围等事实,资料中暂未提供。