faker - テストデータ生成

「らしい」テストデータを作ってくれるプチツールです。

 faker(http://faker.rubyforge.org/)

 >irb
 irb> require 'faker'
 irb> Faker::Name.name
 irb> Faker::Company.name
 irb> Faker::Internet.email
 irb> Faker::Address.street_address

それぞれソレっぽい文字列を生成してくれます(但しUS仕様)。
他にも、郵便番号、範囲の数字、ログインIDとかなら、

 irb> Faker.numerify '###-####'
 irb> (5000..10000).to_a.at_rand
 irb> ('a000'..'z999').to_a.at_rand

など(をメソッド化すればよい)。

こんなの公開すんのかよw、と最初バカにしちゃったけど、かなり愛用してしまいそうなボク。ライフハックとか、そういう類のものか。

fixtures/*.ymlとかで使ってみるといいかもしれない。

 <%
 require 'faker'
 (1..10).each do |i|
 login = ('a000'..'z999').to_a.at_rand
 %>
 <%="user_#{login}:"%>
  <%="id: #{i}"%>
  <%="login: #{login}"%>
  <%="password: #{login}"%>
  <%="name: #{Faker::Name.name}"%>
  <%="mail: #{Faker::Internet.email}"%>
 <% end %>

ランダムデータだと逆にテスト大変か。(ちなみ、fixtureにいっぱいデータ書いてる人いるけど、erbで書けますので)


どうしてもガンダムキャラでテストしたい人でも、簡単に拡張できるでしょう。


コメント

コメントしてください

closed.