SuperAPI AI 工具集

133-java-testing-acceptance-tests

编程与开发

查看项目

更新于 10-15 21:49

技能介绍

用途:从 Gherkin .feature 文件实现 Java 验收测试,适用于框架无关的 Java 项目(不使用 Spring Boot、Quarkus、Micronaut)。给定上下文中的 .feature 文件,查找带 @acceptance 或 @acceptance-tests 标签的场景,为每个场景实现一个 happy-path 测试。

主要能力:解析 Gherkin .feature 文件定位 @acceptance 场景;用 RestAssured 测试 REST API(given/when/then、状态码、JSON 断言);用 Testcontainers 提供数据库(如 PostgreSQL)和 Kafka;用 WireMock 桩外部 REST API;提供 BaseAcceptanceTest 基类,通过 System.setProperty 在 @BeforeAll 中传播坐标;将 Given-When-Then 映射到 setup、请求与断言;Maven 依赖包括 rest-assured、testcontainers、wiremock-standalone。

使用方式:先确认 .feature 文件在上下文中且项目可编译,运行 ./mvnw compile 或 mvn compile,失败则立即停止;阅读 references/133-java-testing-acceptance-tests.md 并提取 @acceptance 场景;创建或更新测试基础设施并实现每个场景的 happy-path 测试;最后运行 ./mvnw clean verify 或 mvn clean verify 验证。

适用场景:审查 Java 验收测试代码,或在框架无关 Java 项目中应用验收测试最佳实践。

限制:仅实现 happy-path 场景;前置条件要求 .feature 文件必须在上下文中,且项目不得使用 Spring Boot、Quarkus 或 Micronaut,否则应改用框架专用规则;编译失败或缺少 feature 文件时必须停止。详细示例与约束见参考文件。