From ecc
JUnit 5, Mockito, MockMvc, Testcontainers, JaCoCo를 사용하는 Spring Boot용 테스트 주도 개발 스킬입니다. 기능 추가, 버그 수정, 리팩터링 시 사용합니다.
npx claudepluginhub sam42-lab/everything-claude-code-krThis skill uses the workspace's default tool permissions.
80% 이상 커버리지를 목표로 하는 Spring Boot 서비스용 TDD 가이드입니다.
Mandates invoking relevant skills via tools before any response in coding sessions. Covers access, priorities, and adaptations for Claude Code, Copilot CLI, Gemini CLI.
Share bugs, ideas, or general feedback.
80% 이상 커버리지를 목표로 하는 Spring Boot 서비스용 TDD 가이드입니다.
@ExtendWith(MockitoExtension.class)
class MarketServiceTest {
@Mock MarketRepository repo;
@InjectMocks MarketService service;
}
패턴:
@ParameterizedTest@WebMvcTest(MarketController.class)
class MarketControllerTest {
@Autowired MockMvc mockMvc;
@MockBean MarketService marketService;
}
@SpringBootTest
@AutoConfigureMockMvc
@ActiveProfiles("test")
class MarketIntegrationTest {
@Autowired MockMvc mockMvc;
}
@DataJpaTest
@AutoConfigureTestDatabase(replace = AutoConfigureTestDatabase.Replace.NONE)
@Import(TestContainersConfig.class)
class MarketRepositoryTest {
@Autowired MarketRepository repo;
}
@DynamicPropertySource로 JDBC URL 주입Maven 예시:
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
</plugin>
assertThatjsonPathassertThatThrownBy(...)class MarketBuilder {
private String name = "Test";
MarketBuilder withName(String name) { this.name = name; return this; }
}
mvn -T 4 test 또는 mvn verify./gradlew test jacocoTestReport테스트는 빠르고, 격리되고, 결정론적이어야 합니다. 구현 세부보다 동작을 테스트합니다.