2017-01-26 4 views
1

Ich habe eine Dropdownliste mit Werteliste. Ich nehme nur den ausgewählten Wert mit unter dem Code. Es hat vorher funktioniert und ich weiß, dass dies der richtige Weg ist. Aber jetzt gibt mein Test alle Dropdown-Werte im Gegenzug zurück. Ich bin mir nicht sicher, was passiert. Kann mir jemand helfen?Alle Werte werden in Selenium anstelle des ausgewählten Werts abgerufen

@FindBy(how = How.ID, using = "selected-borrower") 
public static WebElement BorrowerName; 

Select select = new Select(BorrowerName); 
select.selectByVisibleText(borrFullName); 
String ActBorrName = BorrowerName.getText(); 
System.out.println("ActBorrName: " + ActBorrName); 

Antwort

2

Eigentlich ist der richtige Weg, um die ausgewählte Option mit getFirstSelectedOption() zu bekommen. BorrowerName.getText() den Text des <select> Tag

@FindBy(how = How.ID, using = "selected-borrower") 
public static WebElement borrowerName; 

Select select = new Select(borrowerName); 
select.selectByVisibleText(borrFullName); 
String actBorrName = select.getFirstSelectedOption().getText(); 
System.out.println("ActBorrName: " + actBorrName); 

Für mehrere ausgewählte Optionen zurück verwenden getAllSelectedOptions()

List<WebElement> selectedItems = select.getAllSelectedOptions(); 
+1

Dank. Das funktioniert genau, was ich brauche. Ich habe dieses Konzept heute gelernt. – mmar

Verwandte Themen