2014-11-30 3 views
0
package com.test.utitlity; 

import java.util.List; 

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

public class selectDropdown extends globalVariables { 
    public static void select(String locator, int indexValue) { 

    Select select= new Select(common.getObject(locator)); 
    //select.selectByValue("selectValue"); 
    System.out.println(indexValue); 
    select.selectByIndex(indexValue); 
    } 

} 

Это щелчок по выпадающему списку, но не выбранный вариант. Раскрывающееся меню пуст .. Как разрешить это? Но когда я запускаю режим отладки, он работает так, как ожидалось. Добавлено условие ожидания, но получение IllegalStateException.Выбор варианта выпадающего меню НЕ работает с Selenium

+0

Что делает ** common.getObject (locator) ** return? – Subh

+0

driver.findElement (By.name ("xxx")); – ChanGan

+0

Не могли бы вы добавить соответствующий фрагмент кода HTML выпадающего списка? – Subh

ответ

0

Можете ли вы попробовать нижеследующий вариант и сообщить мне, что является результатом.

WebDriverWait Test_Wait = new WebDriverWait(driver, 10); 
WebElement Drop_down = Test_Wait.until(ExpectedConditions.elementToBeClickable(common.getObject(locator))); 
List<WebElement> lst2 = Drop_down.findElements(By.xpath(".//option[contains(text(),'Your_Option_Text')]")); 
for (WebElement option : lst2) 
    { 
     if (!option.isSelected()) 
       { 
        option.click(); 
       } 
    } 
+0

Изменен мой код, как вы сказали !!! Тем не менее, он подходит к этому варианту, но не выбирает этот параметр. Tested Tab option тоже .. он дает пустое..Не могу угадать, почему он не работает. Другие выпадающие списки работают отлично – ChanGan

Смежные вопросы