2012-12-21 13 views
19

Wprowadzam wartość w TextBox lub Combobox i chcę odzyskać wprowadzoną właśnie wartość. Widzę, że metoda Selenium Weblement "getText()" nie pobiera wartości, wydaje się, że wprowadzony tekst nie zostanie przekazany do DOM.Jak uzyskać wpisany tekst z pola tekstowego w selen

Wszelkie rozwiązania?

Odpowiedz

36

Sposób getText() jest do pobierania węzła tekstu pomiędzy znacznikami elementów na przykład:

<p>Something</p> 

getText() powróci „coś”

w polu tekstowym wpisać tekst trafia do atrybutu value więc można spróbować coś takiego:

findElement(By.id("someid")).getAttribute("value"); 

ComboBox jest nieco inny. Ale jeśli używasz obiektu Select można użyć metody:

Select selectItem = new Select(findElement(By.id("someid"))); 
selectItem.getFirstSelectedOption().getText(); 
+2

Dzięki bob, to działa zgodnie z oczekiwaniami. Dlaczego używanie Firebuga wprowadzonego tekstu nie jest aktualizowane w atrybucie value? – Fazy

1

Spróbuj getValue jeśli jest to pole tekstowe lub rozwijane pole

String lastname=selenium.getValue("//*[@id='lastName']"); 
System.out.println(lastname); 
Powiązane problemy