본문으로 건너뛰기

The easiest way to generate fully‑customizable, randomly populated instances

Java & Kotlin library for both DRY (Don't Repeat Yourself) and DAMP (Descriptive And Meaningful Phrases) testing

ProductTest.java
// Generate a random object
FixtureMonkey fm = FixtureMonkey.create();
Product product = fm.giveMeOne(Product.class);

// Customize specific fields
Product custom = fm.giveMeBuilder(Product.class)
    .set("name", "Fixture Monkey")
    .set("price", 29_900L)
    .sample();

Why Fixture Monkey?

Simplicity

Generate fully-populated test objects with a single line of code. No boilerplate, no complex setup.

♻️

Reusability

Define once, use everywhere. Share test fixtures across your entire test suite effortlessly.

🎲

Randomness

Discover edge cases automatically with smart randomization. Focus on what matters in your tests.