У меня есть следующие элементы, определенные в пределах страницы SitePrism:Как выбрать элемент из раскрывающегося списка с помощью сайта Prism?
element :type, "select[id='type']"
elements :type_options, "select[id='type'] option"
И в моих определениях шага огурца я следующий код, чтобы выбрать элемент из выбранного ящика на основе значения элементов:
@app.new.type_options.each {|name| name.click if name.text.upcase == value.upcase}
Мне не очень нравится эта реализация, но она отлично работает при запуске Capybara в chrome, но не удается, когда я запускаю ее без головы, поэтому я считаю, что должен быть альтернативный/лучший способ выбора выпадающих элементов.
В идеале я хотел бы сделать что-то вроде @app.new_r.r_type.select 'value'
, но я не могу понять, как это сделать в SitePrism.
Итак, мой первый вопрос: может ли кто-нибудь порекомендовать элегантный способ выбрать элемент из раскрывающегося списка по значению с сайта SitePrism?
И мой второй вопрос: любая идея, почему приведенный выше код не работает при запуске безголового?
Что вы получаете, когда пытаетесь «@app.new_r.r_type.select» значение? –
Я получаю Не удалось найти ошибку "event" (Capybara :: ElementNotFound). – drooks
Исправление - я уже пробовал это раньше, но я пытался сопоставить «значение» с «значением» и получал ошибку «Невозможно найти вариант« событие »(Capybara :: ElementNotFound). После фиксации моих помощников это работает. Это также решило мою вторую проблему. Спасибо Nat! – drooks