Я новичок в тесте 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? Не только внутри оператора before(:each) do, но и >опишите...сделайте заявление)
Вопрос 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, но я не уверен.
Кто-нибудь может прояснить мне два вопроса?