Files

28 lines
1.5 KiB
Markdown

# instancio
Companion code for the ankurm.com post *Instancio: Generate Realistic Test Data Automatically in Java* (https://ankurm.com/instancio-java-generate-test-data/).
| Component | Version |
|---|---|
| instancio-junit / instancio-core | 6.1.0 (GA; `6.0.0-RC1..RC4` exist on Maven Central but are release candidates) |
| JUnit Jupiter | 6.1.3 (the version `instancio-junit` 6.1.0 itself is built against) |
| slf4j-simple | 2.0.19, only in the optional `seed-log` profile |
| JDK | 25 (Temurin 25.0.5+8) |
```bash
./scripts/run-all.sh # tests + failure captures; regenerates output/*.txt
```
Each test writes a transcript to `output/` and asserts the same facts. Not stable between runs: `01`, `03` (random sizes), `15` (random ages), and the seeds in `17` and `18`.
| Test | Output | Topic |
|---|---|---|
| `BasicsTest` | 01-03 | `create`, what the defaults look like, other entry points |
| `CustomiseTest` | 04-08 | `set`, `generate`, `supply`, `ignore`, `withNullable`, `subtype`, selectors, unused-selector error |
| `SettingsAndSeedTest` | 09-11 | `Settings` keys, same seed gives equal objects |
| `GenericsAndSealedTest` | 12-14 | sealed hierarchy, `TypeToken`, record compact constructor |
| `JUnitExtensionTest` | 15 | `InstancioExtension`, `@WithSettings`, `@Given`, `@Seed`, parameterized tests |
| `FailingSeedDemoTest`, `ReproduceFailureDemoTest` | 16-18 | fail on purpose (only with `-Dlab.demo=...`), seed summary, reproduction |
`@InstancioSource` no longer exists in instancio-junit 6.x; the module uses `@Given` and `@MethodSource` instead.