Перейти к содержимому

Фотография

Как выбрать option из select без привязки к значению и value?


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 7

#1 aaa

aaa

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Макеенков Сергей Сергеевич
  • Город:г. Ивантеевка

Отправлено 27 января 2011 - 12:18

Всем привет... я по-моему отупел!

Уменя есть код
<select id="online_course" name="course">
<option value="empty">Выберите тему</option>
<option value="92" class="">чччч2</option>
<option value="58" class="">чччч3</option>
<option value="21" class="">ыыыы4</option>
</select>
Итак, мне нужно выбрать второе значение списка... Пишу на java...

Список меняется и значения меняются и value меняются соотвественно, поэтому нужно просто выбирать первое после "Выберите тему" значение!

В итоге мне нужно выбрать второе значение и запомнить его, т.е. запомнить "чччч2"

Есть решения?
  • 0
Что я буду делать в свободный день:
поиграю в самолетики под кроватью,
совершу мелкое хулиганство над печенью,
поищу место под солнцем, накормлю жадные пальцы,
поражу красноречием, пренебрегу приличиями.

Blog - блог о тестировании и не только
------
Светодиоды - интернет-магазин

#2 SMakc

SMakc

    Новый участник

  • Members
  • Pip
  • 56 сообщений
  • ФИО:Максим
  • Город:Москва

Отправлено 27 января 2011 - 12:23

Есть решения?


Документация говорит что есть:

Select an option from a drop-down using an option locator. Option locators provide different ways of specifying options of an HTMLSelect element (e.g. for selecting a specific option, or for assertingthat the selected option satisfies a specification). There are severalforms of Select Option Locator.

label=labelPattern:matches options based on their labels, i.e. the visible text. (Thisis the default.)
label=regexp:^[Oo]ther
value=valuePattern:matches options based on their values.
value=other
id=id:matches options based on their ids.
id=option1
index=index:matches an option based on its index (offset from zero).
index=2


т.е. в Вашем случае index=1
  • 0

#3 aaa

aaa

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Макеенков Сергей Сергеевич
  • Город:г. Ивантеевка

Отправлено 27 января 2011 - 12:24


Есть решения?


Документация говорит что есть:

Select an option from a drop-down using an option locator. Option locators provide different ways of specifying options of an HTMLSelect element (e.g. for selecting a specific option, or for assertingthat the selected option satisfies a specification). There are severalforms of Select Option Locator.

label=labelPattern:matches options based on their labels, i.e. the visible text. (Thisis the default.)
label=regexp:^[Oo]ther
value=valuePattern:matches options based on their values.
value=other
id=id:matches options based on their ids.
id=option1
index=index:matches an option based on its index (offset from zero).
index=2


т.е. в Вашем случае index=1

с инглишем по-прежнему не айс :(
  • 0
Что я буду делать в свободный день:
поиграю в самолетики под кроватью,
совершу мелкое хулиганство над печенью,
поищу место под солнцем, накормлю жадные пальцы,
поражу красноречием, пренебрегу приличиями.

Blog - блог о тестировании и не только
------
Светодиоды - интернет-магазин

#4 ekulgavaya

ekulgavaya

    Новый участник

  • Members
  • Pip
  • 50 сообщений
  • ФИО:Елена
  • Город:Minsk, Belarus


Отправлено 27 января 2011 - 12:28

Ну самым банальным решением будет следующее:
String[] options = getSelenium().getSelectOptions("online_course");
Искомым значением будет
options[1]

Он вернет именно текст а не value
  • 0
In God we trust, the rest we test.

#5 ekulgavaya

ekulgavaya

    Новый участник

  • Members
  • Pip
  • 50 сообщений
  • ФИО:Елена
  • Город:Minsk, Belarus


Отправлено 27 января 2011 - 12:31

Ой, сорри, думала надо вернуть текст, а не выбрать

String[] options = getSelenium().getSelectOptions("online_course");
selenium.select("online_course", options[1]);

  • 0
In God we trust, the rest we test.

#6 aaa

aaa

    Активный участник

  • Members
  • PipPip
  • 110 сообщений
  • ФИО:Макеенков Сергей Сергеевич
  • Город:г. Ивантеевка

Отправлено 27 января 2011 - 12:33

Ой, сорри, думала надо вернуть текст, а не выбрать

String[] options = getSelenium().getSelectOptions("online_course");
selenium.select("online_course", options[1]);

Супер, спасибо!
  • 0
Что я буду делать в свободный день:
поиграю в самолетики под кроватью,
совершу мелкое хулиганство над печенью,
поищу место под солнцем, накормлю жадные пальцы,
поражу красноречием, пренебрегу приличиями.

Blog - блог о тестировании и не только
------
Светодиоды - интернет-магазин

#7 ekulgavaya

ekulgavaya

    Новый участник

  • Members
  • Pip
  • 50 сообщений
  • ФИО:Елена
  • Город:Minsk, Belarus


Отправлено 27 января 2011 - 12:36

т.е. в Вашем случае index=1



Максим вероятно имеет ввиду вот такое решение

selenium.select("online_course", "index=1");

  • 0
In God we trust, the rest we test.

#8 enki86

enki86

    Постоянный участник

  • Members
  • PipPipPip
  • 231 сообщений


Отправлено 27 января 2011 - 12:40

selenium.select("locator", "id=X")
  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных