GenFu is a library you can use to generate realistic test data. It is composed of
several property fillers that can populate commonly named properties through reflection
using an internal database of values or randomly created data. You can override any of
the fillers, give GenFu hints on how to fill them.
GenFu is all about smartly building up objects to use for test and prototype data. It will walk
your object graph and fill in the properties on your type with realistic looking data.
Use GenFu’s static methods to new up new objects for testing, design-time data or seeding a database.
GenFu runs on AspNetCore50 and can run anywhere core can run.
Want to see it in action? Try it out yourself.
GenFu is on NuGet so you can easily add it to your project from the Package Manager Console:
In ASP.NET 5 projects, you can also add it to your
Let’s say you have a Person class like so:
And you want a new instance of Person. With GenFu, you just do this:
person is now filled with all the data you could ever dream of!
“I don’t need no stinkin’ person! I need a whole list of them!
Easy-peasy lemon squeezy, my friend! Ask for a list instead of a single instance like so:
There…you have 25 people, this is the default in a list.
“Yeah, sure, fine, but they have to be between the ages of 19 and 25!”
Cool beans, my brother or sister. Here’s how GenFu rolls:
And you’re off to the races! Don’t worry, I won’t tell your boss how long that took. ;)
If you want to control how the property is set, you can use your own function (anonymous or otherwise) to do so.
If your project uses one-parameter setter methods, you can use GenFu too!
You can use any of the helper methods with setter methods, just like with properties.
Note: Unlike properties, GenFu will not automatically poke data into any methods found. That sounds a little too risky! So if you want GenFu to use your setter methods, specify each method you’d like filled.
GenFu was originally created by James Chambers, David Paquette and Simon Timms under the name AngelaSmith.