title: Recursively generating random objects in Java
body: <p>What library / method can I use for deep generation of random objects for a given class in Java / Scala?
  By deep generation I mean recursively filling the entire object graph with random values, for both primitive and complex types.</p>
  
  <p>The goal is to use randomly generated mock objects for tests.</p>
  
  <p>To make the tests consistent and reproducible, the set of generated objects should be identical on every run.</p>