Files
everything-claude-code-zh/skills/springboot-verification/SKILL.md

101 lines
2.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: springboot-verification
description: Spring Boot 项目的验证循环Verification loop包含构建、静态分析、带覆盖率的测试、安全扫描以及在发布或 PR 前的差异评审diff review
---
# Spring Boot 验证循环Verification Loop
在提交 PR 前、发生重大变更后以及预部署阶段运行此流程。
## 阶段 1构建Build
```bash
mvn -T 4 clean verify -DskipTests
# 或者
./gradlew clean assemble -x test
```
如果构建失败,请停止并修复。
## 阶段 2静态分析Static Analysis
Maven常用插件
```bash
mvn -T 4 spotbugs:check pmd:check checkstyle:check
```
Gradle如果已配置
```bash
./gradlew checkstyleMain pmdMain spotbugsMain
```
## 阶段 3测试 + 覆盖率Tests + Coverage
```bash
mvn -T 4 test
mvn jacoco:report # 验证 80% 以上的覆盖率
# 或者
./gradlew test jacocoTestReport
```
报告指标:
- 测试总数、通过/失败数量
- 覆盖率 %(行/分支)
## 阶段 4安全扫描Security Scan
```bash
# 依赖项 CVE 漏洞扫描
mvn org.owasp:dependency-check-maven:check
# 或者
./gradlew dependencyCheckAnalyze
# 密钥Secrets扫描 (git)
git secrets --scan # 如果已配置
```
## 阶段 5代码规范/格式化Lint/Format可选阈值
```bash
mvn spotless:apply # 如果使用了 Spotless 插件
./gradlew spotlessApply
```
## 阶段 6差异评审Diff Review
```bash
git diff --stat
git diff
```
自查清单Checklist
- 未残留调试日志(如 `System.out`,或缺少防护检查的 `log.debug`
- 错误信息和 HTTP 状态码具有明确语义
- 在必要处已包含事务Transactions和校验Validation
- 配置变更已记录在文档中
## 输出模版Output Template
```
验证报告 (VERIFICATION REPORT)
===================
构建 (Build): [通过/失败]
静态分析 (Static): [通过/失败] (spotbugs/pmd/checkstyle)
测试 (Tests): [通过/失败] (通过 X/Y覆盖率 Z%)
安全 (Security): [通过/失败] (CVE 发现数量: N)
差异 (Diff): [X 个文件已变更]
结论 (Overall): [就绪 / 未就绪]
待修复问题:
1. ...
2. ...
```
## 持续模式Continuous Mode
- 在发生显著变更时,或在长会话中每 3060 分钟重新运行各阶段。
- 保持短反馈循环:运行 `mvn -T 4 test` + spotbugs 以获得快速反馈。
**记住**快速反馈优于后期惊讶。保持严格的准入门槛——在生产系统中将警告Warnings视为缺陷Defects