Fabricator makes it easy to generate sample data during development of your .NET application whenever real data isn't available, takes a long time to access or has regular breaking changes.


The focus of Fabricator is to allow generating test objects with as little setup code as possible. To enable this, logical defaults are used for property types, and common properties such as names and addresses are populated based on conventions. In cases where this doesn't meet your needs, or you need to set up a complex hierarchy of objects, the setup options and rules are designed to be flexible enough to account for any scenario.

What now?

  1. Download the Fabricator library or get the latest package using NuGet
  2. Read the guide to getting started
  3. Learn about the different rules available when generating values
  4. Learn about the conventions used to simplify data generation
  5. Let me know if you find any bugs, missing rules, or additional conventions I need to work on
  6. Let me know if you've found Fabricator useful


Currently the plan is to make Fabricator as stable and friendly as possible. While Fabricator is in beta the idea is to make the interface as fluent, discoverable and usable as possible, remove blockers preventing you from easily generating test data and adding obvious capabilities which can be inferred without requiring additional user code at generation-time. If the library is found useful then, long-term, Fabricator may support more advanced scenarios such as generating sample data based on database schemas or ORM configuration.

Last edited Apr 17, 2011 at 8:26 AM by JRoughan, version 16