【Rails】 테스트에 사용할 더미 데이터를 준비한다 【Faker】
소개
RSpec등으로 테스트할 때에, FactoryBot등에서 미리 데이터를 준비하는 일이 있습니다만, 그 때에 랜덤 데이터를 좋은 느낌으로 만들어 주는 Faker의 사용법에 대해서 써 갑니다.
준비
gem을 설치하기만 하면 됩니다.
Gemfile
group :development, :test do
# (略)
gem 'faker'
end
터미널
$ bundle install
사용법
rb 파일에
Faker::[ジャンル].[タイトルなど]
를 입력하면 OK입니다.어떤 것이 준비되어 있는지는 공식 참조 에서 확인해 보세요.
README의 사촌에 샘플이 늘어서 있으므로, 사용하고 싶은 것을 클릭해 링크처의 표시대로에 사용하는 것입니다.

사용해 보지 않으면 이해하기 어렵기 때문에 실제로 사용해 보겠습니다.
이번에는 영화를 사용하고 싶습니다. README의 Movies를 클릭하면 아래와 같이 같은 페이지의 Movies란으로 날아갑니다.

이번에는
Faker::movie
를 사용합니다.Faker::movie
를 클릭하여 상세 페이지로 이동합니다.
이 페이지에 쓰여진 대로 기술하면 랜덤하게 데이터를 취득해 줍니다.
Faker::Movie.title
에서 영화 제목을 받으세요.콘솔에서 확인합니다.
터미널
$ rails c

이런 느낌으로 취득해 줍니다.
포켓몬이나 스타 워즈 같은 데이터도 있으므로 재미 있습니다.


FacrotyBot에서 사용하는 방법
FactoryBot을 사용할 때는 아래와 같이 쓰면 OK입니다.
book.rb
FactoryBot.define do
factory :book do
title { Faker::Book.title }
author { Faker::Book.author }
publisher { Faker::Book.publisher }
end
end
마찬가지로 seed 파일이라도 사용하면 초기 데이터를 랜덤하게 여러가지 작성할 수 있습니다.
Reference
이 문제에 관하여(【Rails】 테스트에 사용할 더미 데이터를 준비한다 【Faker】), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/koki_73/items/60c2441fb873a8db35d5텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)