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

Фотография

не выбирается элемент списка


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

#1 Jenka156

Jenka156

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

  • Members
  • PipPip
  • 137 сообщений
  • ФИО:Женя


Отправлено 25 августа 2011 - 13:39

такая вот проблема. есть список на странице. из него нужно выбрать элемент и нажать кнопку переноса, чтоб он переместился в другой список.
код вот какой:

<select name="ext-comp-1018" size="20" style="height: 343px; width: 230px;" multiple="false" id="plugins_accessible" class=" x-form-select-multiple x-form-field ">
<option value="1" id="ext-gen465">Экспорт в RTF</option>
<option value="2" id="ext-gen466">Экспорт в XLS</option>
</select>

я пробовала методы:
click("//select[@id='plugins_accessible']//option[@value='1']")
clickAt("//select[@id='plugins_accessible']//option[@value='1']")
mouseDown("//select[@id='plugins_accessible']//option[@value='1']")
и еще в комбинации mouseOver() и mouseDown()

ничего не помогает. элемент не выделяется никак и соответственно не переносится в другой список

может кто знает как еще можно выделить элемент? (когда руками проходишь тест, он выделяется щелчком мыши по нему)

выглядит эта форма так:
Изображение
  • 0

#2 Lzk

Lzk

    Специалист

  • Members
  • PipPipPipPipPip
  • 504 сообщений
  • ФИО:Олег
  • Город:Мск

Отправлено 25 августа 2011 - 13:48

попробуйте так
selenium.select("//select[@id='plugins_accessible']", "label=Экспорт в RTF");
  • 1

#3 Jenka156

Jenka156

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

  • Members
  • PipPip
  • 137 сообщений
  • ФИО:Женя


Отправлено 26 августа 2011 - 05:22

работает!!! спасибо большое!!!
  • 0

#4 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 18:46

А если вместо списка селекта используются дивы, то такая конструкция не работает:
selenium.select("//div[@id='ext-gen374']", "label=Item 4");

Подскажите пожалуйста как побороться с ней:
<div id="ext-gen372" class="класс_нэйм1" style="...">
<div id="ext-gen374" class="класс_нэйм2" style="...">
<div class="класс_нэйм3">Item 1</div>
<div class="класс_нэйм3">Item 2</div>
<div class="класс_нэйм3">Item 3</div>
<div class="класс_нэйм3">Item 4</div>
<div class="класс_нэйм3">Item 5</div>...
</div>
</div>

Спасибо

Сообщение отредактировал panterka: 09 сентября 2011 - 20:54

  • 0

#5 grasshopper

grasshopper

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

  • Members
  • Pip
  • 12 сообщений

Отправлено 09 сентября 2011 - 20:43

такая вот проблема. есть список на странице. из него нужно выбрать элемент и нажать кнопку переноса, чтоб он переместился в другой список.
код вот какой:

<select name="ext-comp-1018" size="20" style="height: 343px; width: 230px;" multiple="false" id="plugins_accessible" class=" x-form-select-multiple x-form-field ">
<option value="1" id="ext-gen465">Экспорт в RTF</option>
<option value="2" id="ext-gen466">Экспорт в XLS</option>
</select>

я пробовала методы:
click("//select[@id='plugins_accessible']//option[@value='1']")
clickAt("//select[@id='plugins_accessible']//option[@value='1']")
mouseDown("//select[@id='plugins_accessible']//option[@value='1']")
и еще в комбинации mouseOver() и mouseDown()

ничего не помогает. элемент не выделяется никак и соответственно не переносится в другой список

может кто знает как еще можно выделить элемент? (когда руками проходишь тест, он выделяется щелчком мыши по нему)

выглядит эта форма так:
Изображение

Пошти верно. Нужно
click("//select[@id='plugins_accessible']/option[@value='1']")
// - абсолютный путь
/ - относительный
  • 0

#6 grasshopper

grasshopper

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

  • Members
  • Pip
  • 12 сообщений

Отправлено 09 сентября 2011 - 20:51

А если вместо списка селекта используются дивы, то такая конструкция не работает:
selenium.select("//div[@id='ext-gen374']", "label=Item 4");

Подскажите пожалуйста как побороться с ней:
<div id="ext-gen372" class="класс_нэйм1" style="...">
<div id="ext-gen374" class="класс_нэйм2" style="...">
<div class="класс_нэйм3">Item 1</div>
<div class="класс_нэйм3">Item 2</div>
<div class="класс_нэйм3">Item 3</div>
<div class="класс_нэйм3">Item 4</div>
<div class="класс_нэйм3">Item 5</div>...

Спасибо

А у вас не существует такого элемента //div[@id='ext-gen374']", "label=Item 4"
<div id="ext-gen374"> и <div class="класс_нэйм3">Item 4</div> я так понимаю находится на одном уровне
Какой из элементов нужно выбрать*?
  • 0

#7 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 20:52

А у вас не существует такого элемента //div[@id='ext-gen374']", "label=Item 4"
<div id="ext-gen374"> и <div class="класс_нэйм3">Item 4</div> я так понимаю находится на одном уровне
Какой из элементов нужно выбрать*?


Нет не на одном: <div class="класс_нэйм3">Item 4</div> находится в <div id="ext-gen374">
Отредактировала закрытия тегов в примере, извините, действительно не понятно было какой див в каком.
  • 0

#8 grasshopper

grasshopper

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

  • Members
  • Pip
  • 12 сообщений

Отправлено 09 сентября 2011 - 21:14


А у вас не существует такого элемента //div[@id='ext-gen374']", "label=Item 4"
<div id="ext-gen374"> и <div class="класс_нэйм3">Item 4</div> я так понимаю находится на одном уровне
Какой из элементов нужно выбрать*?


Нет не на одном: <div class="класс_нэйм3">Item 4</div> находится в <div id="ext-gen374">
Отредактировала закрытия тегов в примере, извините, действительно не понятно было какой див в каком.

А просто кликнуть по элементу вас не устроит? А если нужно выбрать несколько элементов, использовать контрол кей вниз, клик, контрол кей вверх?
  • 0

#9 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 21:16

А просто кликнуть по элементу вас не устроит? А если нужно выбрать несколько элементов, использовать контрол кей вниз, клик, контрол кей вверх?


Меня б очень устроило)), но селениум почему-то не видит списка выпадающего с дивами....
  • 0

#10 grasshopper

grasshopper

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

  • Members
  • Pip
  • 12 сообщений

Отправлено 09 сентября 2011 - 21:40


А просто кликнуть по элементу вас не устроит? А если нужно выбрать несколько элементов, использовать контрол кей вниз, клик, контрол кей вверх?


Меня б очень устроило)), но селениум почему-то не видит списка выпадающего с дивами....

click ("//div[@id='ext-gen374']/div(text()='Item 4')")
  • 0

#11 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 21:44

click ("//div[@id='ext-gen374']/div(text()='Item 4')")


Так тоже пробовала, не работает.
Постоянно такое сообщение выдается, как бы не меняла строку "кликанья":
ERROR: Command execution failure. Please search the user group at https://groups.google.com/forum/#!forum/selenium-users for error details from the log window. The error message is: Cannot convert object to primitive value

Пытаюсь просто элемент найти на странице - тоже селениум не видит. Тут какая-то другая проблема, не зависит от способа кликанья..... Надо наверное найти причину, почему селениум ничего не видит на странице этой...
  • 0

#12 grasshopper

grasshopper

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

  • Members
  • Pip
  • 12 сообщений

Отправлено 09 сентября 2011 - 22:02


click ("//div[@id='ext-gen374']/div(text()='Item 4')")


Так тоже пробовала, не работает.
Постоянно такое сообщение выдается, как бы не меняла строку "кликанья":
ERROR: Command execution failure. Please search the user group at https://groups.google.com/forum/#!forum/selenium-users for error details from the log window. The error message is: Cannot convert object to primitive value

Пытаюсь просто элемент найти на странице - тоже селениум не видит. Тут какая-то другая проблема, не зависит от способа кликанья..... Надо наверное найти причину, почему селениум ничего не видит на странице этой...

click ("//div[@id='ext-gen374']/div[text()='Item 4']")
И пожалуйста ознакомьтесь хотя бы на базовом уровне
http://release.selen...t/Selenium.html
  • 0

#13 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 22:10

click ("//div[@id='ext-gen374']/div[text()='Item 4']")
И пожалуйста ознакомьтесь хотя бы на базовом уровне
http://release.selen...t/Selenium.html


Повторюсь: проблема не в том как кликать, селениум не видит элементов.
p.s.Спасибо, я знакома с этой страничкой :)
  • 0

#14 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 09 сентября 2011 - 22:15

Как показывает практика: если что-то долго не выходит, то надо повторить это на свежую голову, т.е. с утра и обычно решение находится :yes:
  • 0

#15 ochoba

ochoba

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

  • Members
  • Pip
  • 7 сообщений
  • ФИО:Таки нет

Отправлено 13 сентября 2011 - 06:09

Добрый день.
У меня та же проблема, селениум не видит селектов, находящихся в дивах.

<td>
    <div>
       <select id = "abvgd">
             <option selected value="1">1</option>
             <option value="2">2</option>
             <option value="3">3</option>
       </select>
    </div>
</td>

selenium.isExists("//td/div") = true;
а selenium.isExists("//td/div/select") уже false, selenium.isExists("//select[@id='abvgd']") тоже false.

Как тут быть?
  • 0

#16 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 871 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 13 сентября 2011 - 14:23

Проверил -- всё работает без проблем с Вашим фрагментом кода.

Хорошо бы посмотреть полный код страницы, лучше даже в "естественной среде обитания", если сайт публично доступен.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#17 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 13 сентября 2011 - 14:25

Проверил -- всё работает без проблем с Вашим фрагментом кода.

Хорошо бы посмотреть полный код страницы, лучше даже в "естественной среде обитания", если сайт публично доступен.


А как быть, если список не из селектов, а из дивов и селениум их почему-то не видит...?
  • 0

#18 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 871 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 13 сентября 2011 - 14:30

А как быть, если список не из селектов, а из дивов и селениум их почему-то не видит...?

Пример в студию! Если будет публично доступный пример -- я напишу кусочек кода, который с ним будет работать, и выложу.
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium

#19 panterka

panterka

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

  • Members
  • PipPip
  • 102 сообщений
  • ФИО:Panterochka
  • Город:Saint John


Отправлено 13 сентября 2011 - 14:33

К сожалению, мое приложение не доступно публично... А пример есть в посте №6
Проблема в том что приложение написано на extjs, видимо оттуда ноги (ни разу не писала тесты под такие приложения, только слышала, что это кашмааар)))
Но по name же все-равно должен элемент находиться?...
  • 0

#20 barancev

barancev

    Администратор

  • Admin
  • PipPipPipPipPipPip
  • 6 871 сообщений
  • ФИО:Алексей Баранцев
  • Город:Россия, Москва


Отправлено 13 сентября 2011 - 14:44

Насколько я могу судить, в ExtJS выпадающие списки реализуются не через дивы, а через списки (ul - li). Пример. Может быть имеется в виду какой-то другой виджет?
  • 0
Алексей Баранцев
Тренинги для тестировщиков (тестирование производительности, защищенности, тест-дизайн, автоматизация):
Линейка тренингов по Selenium


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

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