Upcoming and OnDemand Webinars View full list

Factories with Realistic Data

Brandon Beacher

Here at Highgroove we often use the popular Factory Girl gem in our tests.

I also like to use a data generation library like Forgery in combination with Factory Girl.

Forgery allows me to improve my factories by using realistic instead of contrived data.

For example, here is a User factory without Forgery:

And here is the same factory with Forgery:

Now, each user created by the factory gets a realistic email address.

This becomes useful if you include Factory Girl and Forgery in the development group, in addition to the test group, in your Gemfile:

Now your factories are available from the Rails console in development mode.

Let’s say you want to spin up some records in your local development database so you can see a view fully populated with realistic data. From the console simply do:

Now you’ve got great looking data on screen for a demo, screencast, or perhaps some debugging.

What do you think? Is realistic data in your factories important to you?

Not Happy with Your Current App, or Digital Product?

Submit your event

Let's Discuss Your Project

Let's Discuss Your Project