Konwertuję mój kod selenu 1 na selen 2 i nie mogę znaleźć łatwego sposobu na wybranie etykiety z menu rozwijanego lub uzyskanie wybranej wartości z listy rozwijanej. Czy wiesz, jak to zrobić w Selenium 2?
Oto dwa stwierdzenia, które działają w Selenium 1, ale nie w 2:
browser.select("//path_to_drop_down", "Value1");
browser.getSelectedValue("//path_to_drop_down");
java
selenium
drop-down-menu
selenium-webdriver
user786045
źródło
źródło
Odpowiedzi:
Zapoznaj się z sekcją dotyczącą wypełniania formularzy za pomocą webdrivera w dokumentacji selenu oraz javadoc dla klasy Select .
Aby wybrać opcję na podstawie etykiety:
Aby uzyskać pierwszą wybraną wartość:
źródło
SelectElement salesExecutiveDropDown = new SelectElement(webDriver.FindElement(By.Id("salesExecutiveId")));
deselectAll
to tylko wyboru wielokrotnego: selenium.googlecode.com/svn/trunk/docs/api/java/org/openqa/… .powodzenia
źródło
w ruby do ciągłego używania, dodaj następujące:
i będziesz mógł wybrać wartość:
źródło
Spróbuj użyć:
lub
źródło
Podobną opcją do tego, co zostało opublikowane powyżej przez jandersona, byłoby po prostu użycie metody .GetAttribute w selenie 2. Używając jej, możesz pobrać dowolny element, który ma określoną wartość lub etykietę, której szukasz. Można to wykorzystać do określenia, czy element ma etykietę, styl, wartość itp. Powszechnym sposobem na to jest zapętlenie elementów w menu rozwijanym, aż znajdziesz ten, który chcesz i wybierzesz. W C #
źródło
możesz to zrobić:
źródło
Ta metoda zwróci wybraną wartość do listy rozwijanej,
W międzyczasie
String textval = Selector.getFirstSelectedOption ();
element.getText ();
Zwróci wszystkie elementy z listy rozwijanej.
źródło
To jest kod do wyboru wartości z listy rozwijanej
Wartością selectlocator będzie ścieżka xpath lub nazwa pola rozwijanego, a dla optionLocator wartość do wybrania z pola rozwijanego.
Dzięki,
Rekha.
źródło