2012-09-13 48 views
0

我有以下的爲組合框的代碼片段/下拉在webdriver的組合框的選擇選項的標籤之間的文本:入門使用Java

<select id="color"> 
<option value="">Select color</option> 
<option value="1">Blue</option> 
<option value="2">Green</option> 
<option value="3">Red</option> 

如果我選擇藍色則藍色顯示在組合/下拉。我想使用Selenium 2(WebDriver)使用Java來檢查標籤之間的文本,以檢查組合框中顯示的選定值。如何從組合框的選定值中獲取文本?

回答

1

試試這個:

select.getFirstSelectedOption().getText(); 

select.getFirstSelectedOption().getAttribute("your attribute"); 
+0

謝謝!這是我正在尋找的。 – Michiru

1

要找到的選項選擇的所有值:

String css1 ="select[id='color'] option[value='']" 
String css2 ="select[id='color'] option[value='1']" 
String css3 ="select[id='color'] option[value='2']" 
String css4 ="select[id='color'] option[value='3']" 

1路: 如Tarken上面提到的:

使用JS

第二個辦法:

String getTextByjs(String css) { 
JavascriptExecutor js = (JavascriptExecutor) driver; 
     StringBuilder stringBuilder = new StringBuilder(); 

stringBuilder.append("var x = $(\""+css+"\");"); 
     stringBuilder.append("return x.text().toString();")  ; 


     String res= (String) js.executeScript(stringBuilder.toString()); 
return res; 

} 
getTextByjs(String css1) 
+0

我用Tarken也指出的第一種方法。謝謝! – Michiru