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

Фотография

Проблемы с select (выпадающий список) Webdriver + RSpec (Ruby)

webdriver selenium ruby rspec selenium-webdriver automated-tests автоматизация селениум

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

#1 ToshiDono

ToshiDono

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

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


Отправлено 14 января 2017 - 19:25

Подскажите пожалуйста, как правильно использовать select в Selenium (желательно, но не обязательно) на Ruby.

Пример:

сайт:

http://prntscr.com/dvjxjl - список скрыт
http://prntscr.com/dvjxss - кликнул по списку и он открыт(я сам, селениум не кликает)

код селекта: 

<select id="list_order"> 

  <option value="campaign_id">Aktualität</option> 

  <option value="status" selected="">status</option> 

  <option value="name">name</option> 

  <option value="ordered_qty_sum">Verkäufe</option> 

</select> 

мой код:

element = @driver.find_element xpath: ".//*[@id='list_order']" 
select = Selenium::WebDriver::Support::Select.new(element) 
select.select_by(:value, 'name')

так же пробовал 

select_by(:text, "status") 

пробовал кликать по element перед созданием select

так же пробовал вариант:

element = @driver.find_element xpath: ".//*[@id='list_order']" 
all_options = element.find_elements(:tag_name, "option") 
all_options.each do |option| 
  puts "Value is: " + option.attribute("value") 
  option.click if option.attribute("value") == "status" 
end

Вывод: 

Value is: campaign_id 
Value is: status 
Value is: name 
Value is: ordered_qty_sum  

Т.е. он видит value, но не кликает по option

Не могу понять, что делаю не так, помогите пожалуйста!


  • 0

#2 Argem

Argem

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

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


Отправлено 23 января 2017 - 15:00

Была похожая проблема.

Сделал себе пару методов.
Код на Яве,  переделать думаю  проблем не будет:

import org.openqa.selenium.WebElement;
import org.openqa.selenium.support.ui.Select;

    public static void SelectChoose (String value, WebElement webElement) {
        new Select(webElement).selectByVisibleText(value);
    }    
    
    public static void SelectChoose (int value, WebElement webElement) {
        new Select(webElement).selectByIndex(value);
    }


  • 0



Темы с аналогичным тегами webdriver, selenium, ruby, rspec, selenium-webdriver, automated-tests, автоматизация, селениум

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

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