# T7 任务简报:Onboarding 端到端与缺口测试 ## Where This Fits - Wave: W3 - Depends on: T6 - Contract: `changes/n04-onboard/execution-contract.md` ## Objective 补齐模块级端到端和缺口测试,验证 9 个接口在真实 Spring 上下文、H2 MODE=MySQL 持久化、安全过滤和响应契约下协同工作。 ## Files In Scope - `mydreamjob-server/src/test/java/com/mydreamjob/onboarding/OnboardingEndToEndIntegrationTest.java` - 可在 `mydreamjob-server/src/test/java/com/mydreamjob/onboarding/` 内补充测试缺口。 - 只为修复测试暴露的 onboarding 缺陷修改 `com.mydreamjob.onboarding`、`ErrorCode.java` 或 onboarding 安全匹配。 ## Required Coverage - 9 个路径均至少有成功或权限错误契约测试。 - STUDENT:通用回退、企业合并、完成/取消、重复状态、版本冲突。 - COMPANY:查询、创建、幂等重放、幂等冲突、上限、更新、软删除、重复删除、跨企业隔离。 - STUDENT 公司知识:BASIC_ONLY、CONFIGURED、EMPTY、INSUFFICIENT、SUFFICIENT。 - 评价过滤排除 HIDDEN 或非公开审核状态。 - 匿名 401、错误角色 403、企业不存在 404。 - 响应 JSON 不含 ownerUserId、studentUserId、moderationReason、hash、ip、userAgent、token。 - 数据库行数和状态在所有错误路径后保持正确。 ## TDD Requirement 1. 先写端到端/缺口测试并确认 RED 或明确复现缺口。 2. 修复最小实现使测试 GREEN。 3. 不扩大用户可见行为。 ## Evidence Commands ```powershell cd D:\1\zhi\zhilai\mydreamjob-server mvn -Dtest=Onboarding*Test test ``` ## Done Definition - 所有 onboarding 测试通过。 - 没有仅覆盖 happy path 而遗漏契约错误路径。 - 测试在随机顺序下仍稳定,不依赖真实时钟精度或外部服务。