OOZOU
Hubungi Kami
Kembali ke TIL
ruby

Anda Dapat Menggunakan FactoryBot untuk Model Non-ActiveRecord

13 Oktober 2020

Anda dapat menggunakan method initialize_with dari FactoryBot untuk menginisialisasi objek dengan cara apa pun yang Anda inginkan, sehingga Anda bisa membuat factory untuk objek apa pun sesuka hati

FactoryBot.define do
  factory :citizen_id_image, class: CitizenIdImagePresenter do
    image_url { 'https://placehold.it/200x200' }

    initialize_with { new(image_url: image_url) }
  end
end
build(:citizen_id_image)
#=> 

Pendahuluan

FactoryBot adalah alat pengujian populer untuk aplikasi Ruby on Rails yang memungkinkan developer mendefinisikan dan membuat test fixture secara langsung. FactoryBot menyediakan cara yang fleksibel dan efisien untuk membuat data uji, sehingga menulis dan memelihara pengujian menjadi lebih mudah. Dalam artikel ini, kami akan membahas cara menggunakan FactoryBot secara efektif dalam pengujian Rails.

Menyiapkan FactoryBot

Untuk menyiapkan FactoryBot di aplikasi Rails Anda, tambahkan gem factory_bot ke Gemfile dan jalankan perintah bundle install. Setelah itu, Anda dapat mengonfigurasi FactoryBot dengan membuat file factory_bot.rb di direktori config/initializers. Di file ini, Anda dapat mendefinisikan konfigurasi factory_bot, seperti path factory dan strategi default.

Mendefinisikan Model dan Factory

Di FactoryBot, factory adalah cetak biru untuk membuat sebuah objek. Anda dapat mendefinisikan factory untuk sebuah model dengan membuat file di direktori factories. Misalnya, jika Anda memiliki model User, Anda dapat membuat file user.rb di direktori factories untuk mendefinisikan factory user. Di file ini, Anda dapat mendefinisikan atribut dan asosiasi untuk factory user.

Opsi dan Atribut Factory

FactoryBot menyediakan beberapa opsi dan atribut yang dapat Anda gunakan untuk menyesuaikan factory. Misalnya, Anda dapat menggunakan atribut class untuk menentukan class dari objek yang dibuat. Anda juga dapat menggunakan opsi attributes untuk mendefinisikan atribut factory. Selain itu, Anda dapat menggunakan opsi association untuk mendefinisikan asosiasi antar-factory.

Kesimpulan

Sebagai kesimpulan, FactoryBot adalah alat yang andal untuk membuat test fixture di aplikasi Rails. Dengan mendefinisikan factory untuk model Anda, Anda dapat membuat data uji dengan cepat dan efisien. Dengan opsi konfigurasi yang fleksibel dan atribut yang dapat disesuaikan, FactoryBot memudahkan Anda menulis dan memelihara pengujian. Dengan mengikuti praktik terbaik yang diuraikan dalam artikel ini, Anda dapat memaksimalkan FactoryBot dan meningkatkan kualitas pengujian Anda.

Lainnya tentang ruby

ruby30 April 2021

Mengizinkan Paste Blok Ruby Multibaris di Pry Saat Menggunakan Notasi Titik di Awal

Sekarang kami sering menggunakan notasi titik di awal baris, misalnya:

ruby14 Oktober 2020

Heredoc tanpa Interpolasi

Terkadang Anda ingin menggunakan Heredoc di Ruby tanpa interpolasi ('#{....}'). Anda dapat melakukannya dengan menambahkan tanda kutip tunggal di sekitar kata kunci Anda:

ruby13 Oktober 2020

Hashtable Tingkat Menengah yang Terbentuk Otomatis di Ruby

Semua hashtable tingkat menengah akan dibuat secara otomatis

Punya proyek yang ingin diwujudkan?

Kami ingin mendengar apa yang sedang Anda bangun.

Mulai Percakapanhello@oozou.com
OOZOU Logo

Bangkok · Singapura · Hong Kong

X
Facebook
Instagram
LinkedIn
OOZOU Co., Ltd.
548 One City Centre
Ploenchit Road
Bangkok 10330
Thailand
+66 2544 0000
hello@oozou.com

Layanan

  • Pengembangan Web
  • Agen AI & Generative AI
  • Pengembangan Aplikasi Mobile
  • Analitik Data & Data Engineering
  • Desain UI/UX & Produk
  • Transformasi Digital

Perusahaan

  • Tentang Kami
  • Karier
  • Blog
  • Studi Kasus
  • Demo Langsung
  • Today I Learned
  • Hubungi Kami

Lainnya

  • Industri
  • Jaringan Mitra
© 2026 OOZOU. Hak cipta dilindungi undang-undang.
Kebijakan PrivasiKode EtikKebijakan ABAC