Claude-skill-registry junit-core
JUnit 5 core testing patterns with AAA structure, test organization, and coverage standards
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/junit-core" ~/.claude/skills/majiayu000-claude-skill-registry-junit-core && rm -rf "$T"
manifest:
skills/data/junit-core/SKILL.mdsource content
JUnit Core Skill
REFERENCE MODE: This skill provides reference material. Load specific standards on-demand based on current task.
JUnit 5 testing standards for general Java projects. This skill covers test structure, naming conventions, coverage requirements, and the AAA (Arrange-Act-Assert) pattern.
Prerequisites
This skill applies to Java projects using JUnit 5:
(JUnit 5)org.junit.jupiter:junit-jupiter
Workflow
Step 1: Load Core Testing Standards
CRITICAL: Load this standard for any testing work.
Read: standards/testing-junit-core.md
This provides foundational rules for:
- Test class requirements (1:1 mapping with production classes)
- AAA pattern (Arrange-Act-Assert)
- Coverage requirements (80% line/branch minimum)
- @DisplayName usage
Step 2: Load Coverage Analysis (As Needed)
Coverage Analysis (load for coverage work):
Read: standards/coverage-analysis-pattern.md
Use when: Analyzing test coverage or improving coverage metrics.
Key Rules Summary
Test Class Requirements
// CORRECT - One test class per production class // TokenValidator.java → TokenValidatorTest.java // UserService.java → UserServiceTest.java
AAA Pattern (Arrange-Act-Assert)
@Test @DisplayName("Should validate token with correct issuer") void shouldValidateTokenWithCorrectIssuer() { // Arrange String issuer = "https://example.com"; Token token = createTokenWithIssuer(issuer); // Act ValidationResult result = validator.validate(token); // Assert assertTrue(result.isValid()); assertEquals(issuer, result.getIssuer()); }
DisplayName Annotations
// CORRECT - Descriptive test names @Test @DisplayName("Should throw exception when token is null") void shouldThrowExceptionWhenTokenIsNull() { } @Test @DisplayName("Should return empty when no users found") void shouldReturnEmptyWhenNoUsersFound() { }
Coverage Requirements
- Minimum 80% line coverage
- Minimum 80% branch coverage
- Critical paths: 100% coverage
- All public APIs must be tested
Related Skills
- Maven integration testingpm-dev-java:junit-integration
- CUI test generator frameworkpm-dev-java-cui:cui-testing
- Core Java patternspm-dev-java:java-core
Standards Reference
| Standard | Purpose |
|---|---|
| testing-junit-core.md | Test structure, AAA pattern, naming |
| coverage-analysis-pattern.md | Coverage analysis and improvement |