ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ : Я все еще новичок в Rails / Cucumber, но я пытаюсь учиться.Я все еще использую «web_steps» для Cucumber, пока я работаю с книгой RailsInAction, и я экспериментировал с написанием своих собственных шагов.Я понимаю, почему их забрали, и я доберусь до них.
В одном из моих сценариев с огурцом я заполняю некоторые данные и пытаюсь использовать эти данныезаполнить раскрывающийся список.Данные определенно вставляются, я знаю это, потому что я написал шаг для проверки, чтобы увидеть, есть ли на самом деле эти данные.
Когда тогда предполагается заполнение DropDown, и я пытаюсь "выбрать" изчто DropDown я получаю сообщение об ошибке «* не могу выбрать опцию, нет опции с текстом« Стивен »в поле выбора« result_winner »(Capybara :: ElementNotFound) *»
Я уверен, что мне не хватает чего-то простого, но у меня естьпотерял около часа на это сейчас, и мне просто нужна помощь.
Тесты:
When I follow "Record new Result"
And the users "Steven, Joshua" exist
And I select "Steven" from "result_winner"
Шаги теста:
When /^the users "([^"]*)" exist$/ do |playerNames|
@names = playerNames.scan(/[\w']+/)
for name in @names
@newPlayer = Player.new
@newPlayer.name = name
@newPlayer.save
end
end
Затем код представления в _form.html.erb:
<p>
<%= f.label :winner %>
<%= select("result", "winner", @players.map {|p| [p.name, p.id]}) %>
</p>
Контроллер:
def new
@result = Result.new
@players = Player.find(:all)
end
Если я заполняю базу данных разработки вручнуюс именами и загрузите его в браузер, выпадающие списки содержат заполненные данные и работают отлично.Я почти уверен, что неправильно понимаю, когда и где отображаются тестовые данные или как проверять и выбирать данные из выпадающего списка.
Любая помощь будет принята с благодарностью.