Skip to content
A library for setting up Ruby objects as test data.
Branch: master
Clone or download
softwaregravy and composerinteralia Add setup comment (#1277)
We used to indicate what file to put the configuration in (we prefer spec/support/factory_bot.rb), but removed it in #1141 because it seemed to be causing unnecessary confusion.

But this continued to come up (#1253 and #1243). This PR puts the instructions back in a hopefully less confusing way.
Latest commit e0c23ac Mar 24, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
features Rubocop: Fix Style/StringLiterals Offenses (#1216) Oct 8, 2018
gemfiles Bump version to 5.0.2 [ci skip] Feb 22, 2019
lib Only undefine methods that were previously defined Mar 22, 2019
spec Improve error message for resolving invalid traits Feb 22, 2019
.gitignore Add rubocop Sep 19, 2018
.hound.yml Ask Hound to use custom .rubocop.yml Oct 7, 2018
.rspec Remove unnecessary spec_helper requires May 21, 2018
.rubocop.yml Arrest lines of an unsavory length Dec 12, 2018
.simplecov Clean up SimpleCov usage Apr 24, 2012
.travis.yml Test against activerecord 6.0 Jan 31, 2019
.yardopts Fix missing docs (#1172) Sep 3, 2018
Appraisals Test against activerecord 6.0 Jan 31, 2019
CODE_OF_CONDUCT.md Add standard thoughtbot CODE_OF_CONDUCT.md Sep 8, 2018
CONTRIBUTING.md Replace 'girl' with 'bot' everywhere (#1051) Oct 20, 2017
GETTING_STARTED.md Add setup comment (#1277) Mar 24, 2019
Gemfile Update development dependencies Jan 5, 2019
Gemfile.lock Bump version to 5.0.2 [ci skip] Feb 22, 2019
LICENSE Update copyright notice to 2019 [ci skip] Feb 8, 2019
NAME.md Update naming history explanation Oct 24, 2017
NEWS.md Bump version to 5.0.2 [ci skip] Feb 22, 2019
README.md Update copyright notice to 2019 [ci skip] Feb 8, 2019
RELEASING.md Fix Markdown formatting Feb 26, 2019
Rakefile Update Appraisals Oct 31, 2018
cucumber.yml Fixed issues with some attributes being skipped and added support for… Sep 15, 2009
factory_bot.gemspec Bump to version 5.0.1 [ci skip] Feb 15, 2019

README.md

factory_bot Build Status Code Climate Gem Version Reviewed by Hound

factory_bot is a fixtures replacement with a straightforward definition syntax, support for multiple build strategies (saved instances, unsaved instances, attribute hashes, and stubbed objects), and support for multiple factories for the same class (user, admin_user, and so on), including factory inheritance.

If you want to use factory_bot with Rails, see factory_bot_rails.

Interested in the history of the project name?

Transitioning from factory_girl?

Check out the guide.

Documentation

You should find the documentation for your version of factory_bot on Rubygems.

See GETTING_STARTED for information on defining and using factories. We also have a detailed introductory video, available for free on Upcase.

Install

Add the following line to Gemfile:

gem 'factory_bot'

and run bundle install from your shell.

To install the gem manually from your shell, run:

gem install factory_bot

Supported Ruby versions

The factory_bot 5.x series supports MRI Ruby 2.3+.

The factory_bot 3.x+ series supports MRI Ruby 1.9. Additionally, factory_bot 3.6+ supports JRuby 1.6.7.2+ while running in 1.9 mode. See GETTING_STARTED for more information on configuring the JRuby environment.

For versions of Ruby prior to 1.9, please use factory_bot 2.x.

More Information

You may also find useful information under the factory_girl tag on Stack Overflow.

Contributing

Please see CONTRIBUTING.md.

factory_bot was originally written by Joe Ferris and is now maintained by Josh Clayton. Many improvements and bugfixes were contributed by the open source community.

License

factory_bot is Copyright © 2008-2019 Joe Ferris and thoughtbot. It is free software, and may be redistributed under the terms specified in the LICENSE file.

About thoughtbot

thoughtbot

factory_bot is maintained and funded by thoughtbot, inc. The names and logos for thoughtbot are trademarks of thoughtbot, inc.

We love open source software! See our other projects or hire us to design, develop, and grow your product.

You can’t perform that action at this time.