claudegoodies
Skill

springboot-verification

From affaan-m

Bucle de verificación para proyectos Spring Boot: build, análisis estático, pruebas con cobertura, escaneos de seguridad y revisión de diff antes del lanzamiento o PR.

Runs Maven/Gradle build, static analysis, tests with coverage, and security scans for Spring Boot projects.

Use it when

  • Before opening a PR for a Spring Boot service
  • After major refactors or dependency upgrades
  • Pre-deployment check for staging or production
  • Verifying test coverage meets 80% threshold

Skip it if

  • Project isn't Java/Spring Boot with Maven or Gradle
  • You lack spotbugs/pmd/checkstyle/jacoco/dependency-check plugins configured
  • Just a documentation checklist, not an automated tool—commands run manually

Facts

Repository
affaan-m/ECC
Status
Actively maintained
Last commit

Source preview

The instructions Claude Code reads when this skill runs.

# Bucle de Verificación Spring Boot

Ejecutar antes de PRs, después de cambios importantes y antes del despliegue.

## Cuándo Activar

- Antes de abrir un pull request para un servicio Spring Boot
- Después de refactorizaciones importantes o actualizaciones de dependencias
- Verificación previa al despliegue para staging o producción
- Ejecutar el pipeline completo de build → lint → test → escaneo de seguridad
- Validar que la cobertura de pruebas cumpla los umbrales

## Fase 1: Build

```bash
mvn -T 4 clean verify -DskipTests
# o
./gradlew clean assemble -x test
```

Si el build falla, detener y corregir.

## Fase 2: Análisis Estático

Maven (plugins comunes):
```bash
mvn -T 4 spotbugs:check pmd:check checkstyle:check
```

Gradle (si está configurado):
```bash
./gradlew checkstyleMain pmdMain spotbugsMain
```

## Fase 3: Pruebas + Cobertura

```bash
mvn -T 4 test
mvn jacoco:report   # verificar cobertura 80%+
# o
./gradlew test jacocoTestReport
```

Reporte:
- Total de pruebas, pasadas/fallidas
- % de cobertura (líneas/ramas)

### Pruebas Unitarias

Probar la lógica del servicio en aislamiento con dependencias mockeadas:

```java
@ExtendWith(MockitoExtension.class)
class UserServiceTest {

  @Mock private UserRepository userRepository;
  @InjectMocks private UserService userService;

  @Test
  void createUser_validInput_returnsUser() {
    var dto = new CreateUserDto("Alice", 
View full source on GitHub →

Other skills