Ни. Первый - немного многословен, а также чувствует себя слишком дружелюбно с реализацией метода. Вторая тесно связывает ваши спецификации с вашими фабриками и будет огромной болью, когда вам нужно сменить Фабрику.
Вместо этого используйте короткий второй стиль, но сделайте данные, используемые явно, в спецификации:
@address = Factory.build(:address, :building_name => "Alpha",
:street_name => "Bravo St.",
:suburb => "Charlie")
@address.first_line.should == "Alpha Bravo St. Charlie"
Это также хорошо, потому что вы можете предоставить различные тестовые данные для метода, которые необходимы для проверки некоторых других его функций:
@address = Factory.build(:address, :building_name => "Alpha ",
:street_name => " Bravo St. ",
:suburb => " Charlie " )
@address.first_line.should == "Alpha Bravo St. Charlie"