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.