# 测试指南 ## 后端 ```bash cd backend ./mvnw test ./mvnw failsafe:integration-test failsafe:verify ``` 单元测试覆盖薪酬公式、请假校验、绩效权重、审计 hash 和数据范围。集成测试使用 Testcontainers 启动 PostgreSQL、Redis、RabbitMQ。 ## 前端 ```bash cd frontend npm ci npm run build ``` ## E2E ```bash cd tests/e2e npm ci npx playwright install chromium npm test ``` E2E 冒烟使用 `sys_admin` 走真实表单流:新增员工、创建候选人、安排面试、登记面试结果、处理 Offer、转入职、勾选入职清单、提交请假、发起薪酬核算、发布绩效周期和创建导出任务。 ## 性能 ```bash scripts/run-k6.sh tests/perf/login.js scripts/run-k6.sh tests/perf/employee-search.js scripts/run-k6.sh tests/perf/attendance-import.js scripts/run-k6.sh tests/perf/report-export.js ``` ## 安全 ```bash scripts/run-zap-api-scan.sh ``` ## 运行后验收重点 - 登录失败锁定、刷新令牌撤销、离职账号停用。 - 员工对象级权限和部门数据范围。 - 页面按钮应从列表行和表单输入取值,不应提交固定业务数据。 - 招聘流程应覆盖面试不通过、未参加面试、拒绝 Offer、未到岗等中断状态。 - 请假审批应同时验证同意和拒绝;考勤后台修正必须填写原因并产生审计记录。 - 薪酬公式异常时批次失败且无半成品工资单。 - 导出任务 CSV/XLSX 下载必须通过带令牌请求,导入任务和集成事件应分区展示。 - 审计记录 hash 链和 correlationId。