Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/kora-projects/kora-skillsnpx agentmods add skills/kora-projects/kora-skills/kora-testing-junit-javaWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/kora-projects/kora-skills/kora-testing-junit-java)<a href="https://agentmods.dev/skills/kora-projects/kora-skills/kora-testing-junit-java"><img src="https://agentmods.dev/badge/skills/kora-projects/kora-skills/kora-testing-junit-java/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/kora-projects/kora-skills/kora-testing-junit-java"><img src="https://agentmods.dev/badge/skills/kora-projects/kora-skills/kora-testing-junit-java.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00065 | $0.03331 |
| Opus 5.5 | $0.00026 | $0.01332 |
| Sonnet 5.5 | $0.00013 | $0.00666 |
| Haiku 4.5 | $0.00006 | $0.00333 |
Grade A, and why
kora-testing-junit-java scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 375 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Kora Testing JUnit (Java)
Kora sub-skill — obey the kora-v1 meta rules on every task: R0 ensure
.kora-agent/docs+examples are cloned · R1 read this sub-skill before writing code · R2 Kora APIs only — no Spring/Micronaut/Quarkus, no invented annotations or config keys · R3 journal any incorrect Kora usage. Add comments/Javadoc only if asked.
In-process JUnit 5 tests for Java Kora services. @KoraAppTest builds a trimmed
version of your compile-time dependency graph, then injects the components you ask for
with @TestComponent. The same code that runs in production is exercised in the test;
selected dependencies can be replaced by mocks or test-only components.
Kora supports three test levels:
- Component test — one component plus the dependencies needed to build it.
- Inter-component test — several real components interacting.
- Integration test — real components plus external systems (PostgreSQL, Kafka) via Testcontainers.
For end-to-end confidence the Kora maintainers also recommend black-box testing of the
packaged image (see the kora-testing-blackbox skill).
Quick Start
Dependencies
dependencies {
koraBom platform("ru.tinkoff.kora:kora-parent:1.2.19")
annotationProcessor "ru.tinkoff.kora:annotation-processors"
testImplementation platform("org.junit:junit-bom:5.13.4")
testImplementation "org.junit.jupiter:junit-jupiter"
testImplementation "ru.tinkoff.kora:test-junit5"
testImplementation "org.mockito:mockito-core:5.18.0"
}
test {
useJUnitPlatform()
testLogging {
showStandardStreams(true)
events("passed", "skipped", "failed")
exceptionFormat("full")
}
}
The kora-parent BOM pins every ru.tinkoff.kora:* artifact — never set their versions
individually. The annotation processor is mandatory: without it the @KoraApp graph is
never generated and @KoraAppTest has nothing to load.
Component test (real graph)
What ships with it
14 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- assets/ComponentTest.java.template 1.4 KB
- assets/ComponentTestWithMock.java.template 2.4 KB
- assets/IntegrationTest.java.template 3.6 KB
- assets/IntegrationTestWithKafka.java.template 4.8 KB
- assets/IntegrationTestWithPostgres.java.template 3.3 KB
- assets/MockTemplate.java.template 6.2 KB
- assets/TestApplication.java.template 1.9 KB
- assets/TestApplicationWithCleanup.java.template 1.8 KB
- evals/evals.json 6.2 KB
- references/assertion-patterns-reference.md 4.4 KB
- references/korapptest-extension-reference.md 7.4 KB
- references/mockito-integration-reference.md 6.4 KB
- references/testcontainers-jdbc-reference.md 7.0 KB
- references/testcontainers-kafka-reference.md 6.2 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 2mo ago First seen · 375 lines · 65 tokens per session scan A 704b867fb20d
kora-testing-junit-java is a skill published in the GitHub repository kora-projects/kora-skills (2 stars, last pushed 29d ago), licensed Apache-2.0. It adds 65 tokens to every session and 3,331 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
java-affected-tests
Use before opening or updating an OpenMetadata PR that changes Java, a JSON schema, an index mapping, a SQL migration, seed data or a pom — PR CI no longer runs the Java integration tests (they run only in the merge queue) and the JavaUIIT/search-it suites run only nightly, so this selects the unit tests and…
java-unit-test
A code-generation guide for Java unit tests in Spring Boot projects. Unit tests check one small piece of code in isolation; Spring Boot is a Java framework for building web applications and services.
test-quality
Write high-quality JUnit 5 tests with AssertJ assertions. Use when user says "add tests", "write tests", "improve test coverage", or when reviewing/creating test classes for Java code.
testng-skill
Generates TestNG tests in Java with groups, data providers, parallel execution, XML suite configuration, and listeners. Use when user mentions "TestNG", "@DataProvider", "testng.xml", "groups". Triggers on: "TestNG", "@DataProvider", "testng.xml", "TestNG suite", "parallel tests Java".
JUnit 5 Testing
Production-grade Java unit and integration testing with JUnit 5 covering assertions, parameterized tests, lifecycle hooks, Mockito mocking, nested tests, and extensions.
111-java-maven-dependencies
Use when you need to add or evaluate Maven dependencies that improve code quality or domain modeling — including nullness annotations (JSpecify), static analysis (Error Prone + NullAway), functional programming (VAVR), architecture testing (ArchUnit), or money and currency support (JavaMoney) — and want a…