Автоматический тест с Ruby: выберите опцию из выпадающего списка - PullRequest
1 голос
/ 11 февраля 2009

Я пишу автоматизированный тест с Ruby (платформа Selenium), и мне нужно знать, как выбрать опцию из выпадающего списка.

Заранее спасибо!

Ответы [ 5 ]

1 голос
/ 17 февраля 2009

основано на ответе флопхоппера :

selenium.addSelection(locator, value)
or
selenium.select(locator, value)

Вы почти наверняка захотите "id = my_select_box_id" (с кавычками) для locator, хотя другие селекторы CSS будут работать. value - это буквальное текстовое значение (не отображаемое значение) option, которое нужно выбрать.

0 голосов
/ 17 сентября 2010

Самый простой способ сделать это: select(selectLocator,optionLocator), как предложено выше.

selectLocator: имя или xpath для выпадающего optionLocator: имя или xpath для опции выпадающего списка, которая будет выбрана

например.

@selenium.select "Language", "label=Ruby"
0 голосов
/ 11 февраля 2009

Помимо функциональных тестов, если вы ищете что-то, похожее на настоящее приложение, взгляните на WebRat . Для интеграционных тестов, не поддерживающих AJAX, он имеет очень хороший DSL для выбора DOM и принятия соответствующих мер против них. (щелчок по ссылке, заполнение формы и т. д.).

С другой стороны, если ваше приложение является внешним веб-приложением, для которого вы просто хотите выполнить приемочные тесты, вы также можете проверить Selenimum или Watir .

Обратите внимание, что WeRat - это веб-инфраструктура, в которой Selenimum и Watir используют браузер для непосредственного взаимодействия с вашим веб-приложением (как настоящий пользователь).

0 голосов
/ 11 февраля 2009

Я думаю, вы хотите эту команду: -

select(selectLocator, optionLocator)
  • selectLocator идентифицирует выпадающий список
  • optionLocator идентифицирует опцию в списке
0 голосов
/ 11 февраля 2009

Похоже, вы пишете здесь функциональный тест. Выбор этого, вероятно, не принесет вам особой пользы. Вам необходимо отправить форму, чтобы протестировать контроллер. :) Это может помочь людям, отвечающим на вопросы, узнать, какую платформу тестирования вы используете, потому что есть несколько вариантов на выбор. Если вы используете RSpec, посмотрите эту скринкаст .

Надеюсь, это все равно поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...