Я новичок в тесте rspec. У меня есть два вопроса по тесту rspec в Rails.
Если у меня есть модель Car , которая ActiveRecord ,
class Car < ActiveRecord::Base
...
def get_color
..
end
end
Вопрос 1. В тесте rspec (у меня готовы все гемы и конфигурации), в чем разница между
before(:each) do
@my_car=Factory.create(:car, params)
end
и
before(:each) do
@my_car=Car.new(params)
@my_car.save
end
(я имею в виду, в чем разница внутри области теста rspec, разве они не имеют такого же эффекта внутри теста rspec? 1022 * опишите ... сделайте заявление)
Вопрос 2. Как вы видите в моей модели car , есть функция экземпляра get_color
, могу ли я вызвать эту функцию экземпляра в моем тесте rspec следующим образом?
@my_car=Factory.create(:car, params)
@my_car.get_color #Can I call instance method in rspec test?
Я пробовал это, но, похоже, метод экземпляра не возвращает результат, как ожидалось в тесте rspec. Но работает вне тестового кода rspec, но я не уверен.
Кто-нибудь может объяснить мне два вопроса?