मेरा मानना है कि ऊपर स्टीव की टिप्पणी सही उत्तर होनी चाहिए। आप Rails.application.load_seed
अपने टेस्ट एन्विरोनमेंट में सीड डेटा लोड करने के लिए उपयोग कर सकते हैं । हालाँकि, यह डेटा कब और कितनी बार लोड किया जाता है, कुछ बातों पर निर्भर करता है:
न्यूनतम का उपयोग करना
सभी परीक्षणों से पहले एक बार इस फ़ाइल को चलाने का कोई सुविधाजनक तरीका नहीं है ( इस गीथब मुद्दे को देखें )। आपको प्रत्येक परीक्षण से पहले एक बार डेटा लोड करने की आवश्यकता होगी, आपकी परीक्षण फ़ाइलों की सेटअप विधि में संभावना:
# test/models/my_model_test.rb
class LevelTest < ActiveSupport::TestCase
def setup
Rails.application.load_seed
end
# tests here...
end
RSpec का उपयोग करना
before(:all)
इस मॉडल के सभी परीक्षण के लिए बीज डेटा लोड करने के लिए RSpec की विधि का उपयोग करें :
describe MyModel do
before(:all) do
Rails.application.load_seed
end
describe "my model..." do
# your tests here
end
उम्मीद है की यह मदद करेगा।
test_helper.rb
लिए काम नहीं किया, हालांकि stackoverflow.com/a/1998520/68210 ने किया।