Tôi tin rằng bình luận của Steve ở trên là câu trả lời chính xác. Bạn có thể sử dụng Rails.application.load_seed
để tải dữ liệu hạt giống vào envoironment thử nghiệm của mình. Tuy nhiên, khi nào và tần suất tải dữ liệu này phụ thuộc vào một số điều sau:
Sử dụng Minitest
Không có cách nào thuận tiện để chạy tệp này một lần trước tất cả các thử nghiệm (xem vấn đề Github này ). Bạn sẽ cần tải dữ liệu một lần trước mỗi lần kiểm tra, có thể là trong phương pháp thiết lập tệp kiểm tra của bạn:
# test/models/my_model_test.rb
class LevelTest < ActiveSupport::TestCase
def setup
Rails.application.load_seed
end
# tests here...
end
Sử dụng RSpec
Sử dụng before(:all)
phương pháp của RSpec để tải dữ liệu hạt giống cho tất cả các thử nghiệm cho mô hình này:
describe MyModel do
before(:all) do
Rails.application.load_seed
end
describe "my model..." do
# your tests here
end
Hi vọng điêu nay co ich.
test_helper.rb
không phù hợp với tôi mặc dù stackoverflow.com/a/1998520/68210 đã làm.