Hogyan válasszuk ki az értéket a legördülő menüből Selenium
⚡ Okos összefoglaló
Válasszon értéket a legördülő menüből Selenium a dedikált Select osztályt használja a HTML SELECT elemek vezérléséhez. Az osztály elérhetővé teszi a selectByVisibleText, selectByValue és selectByIndex metódusokat, amelyek pontosan kiválasztják a beállításokat, és támogatják a többszörös kijelölésű legördülő menüket.

Mi a Select Class a következőben: Selenium?
Az Válasszon osztályt itt: Selenium egy segítő osztály a org.openqa.selenium.support.ui csomag, amely lehetővé teszi a WebDriver HTML-lel való interakcióját <select> elemek. Metódusokat tesz elérhetővé a látható szöveg, érték vagy index alapján történő opciók kiválasztásához és kiválasztásának megszüntetéséhez, valamint annak észleléséhez, hogy egy legördülő menü elfogad-e több kijelölést.
Mivel Select rendszeresen jár Java osztályban létrehozol egy példányt a new kulcsszót, és adja át a WebElement-et, amely a következőre mutat: <select> címkét az oldalon.
Hogyan válasszuk ki a legördülő menüt Selenium
Mielőtt egy legördülő menüt kezelnénk Selenium, két lépésre van szükség:
- Importálja a csomagot org.openqa.selenium.support.ui.Select.
- Hozza létre a legördülő menüt egy példányként
Selecttárgy be Selenium WebDriver.
Példaként nyissa meg a Mercury Tours regisztrációs oldala (https://demo.guru99.com/test/newtours/register.php) és keresse meg az „Ország” legördülő menüt.
1. lépés) Importálja a Select csomagot.
import org.openqa.selenium.support.ui.Select;
2. lépés) Deklarálja a legördülő elemet a Select osztály példányaként. Az alábbi példában a példány neve drpCountry.
Select drpCountry = new Select(driver.findElement(By.name("country")));
3. lépés) Kezdje el a legördülő menü vezérlését. Használjon bármelyik Select metódust egy opció kiválasztásához. Az alábbi példa az „ANTARKTISZ” lehetőséget választja:
drpCountry.selectByVisibleText("ANTARCTICA");
Válassza a Methods in lehetőséget Selenium
A Select osztály számos metódust biztosít a legördülő menük opcióival való interakcióhoz. Az öt leggyakoribbat az alábbiakban ismertetjük.
1) selectByVisibleText() és deselectByVisibleText()
- Kijelöli vagy megszünteti a paraméterrel megegyező megjelenített szövegű opció kijelölését.
- Paraméter: a beállításhoz megjelenített pontos szöveg.
Példa:
drpCountry.selectByVisibleText("ANTARCTICA");
2) selectByValue() és deselectByValue() függvények
- Kijelöli vagy megszünteti a kijelölését annak a lehetőségnek, amelynek
valueaz attribútum megegyezik a paraméterrel. - Vegye figyelembe, hogy a megjelenített szöveg és a
valueaz attribútumok gyakran eltérőek, ahogy az alább látható. - Paraméter: az opció
valuetulajdonság.
Példa:
drpCountry.selectByValue("234");
3) selectByIndex() és deselectByIndex() függvények
- Kijelöli vagy megszünteti a kijelölést az adott indexnél. Az indexek nulla alapúak.
- Paraméter: az opció egészértékű indexe.
Példa:
drpCountry.selectByIndex(0);
4) Többszörös()
- Visszatér
TRUEha a legördülő menü egyszerre több kiválasztást is lehetővé tesz, egyébkéntFALSE. - Paraméter: egyik sem.
Példa:
if (drpCountry.isMultiple()) {
// do something here
}
5) deselectAll()
- Törli az összes kijelölt opciót. Csak több elemet tartalmazó legördülő menük esetén érvényes.
- Paraméter: egyik sem.
Példa:
drpCountry.deselectAll();
teljes Code a Select Methods-ból Selenium
A következő Java A program bemutatja a Select osztályt egyetlen kijelölésű és több kijelölésű legördülő menüben is.
package newpackage;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.Select;
import org.openqa.selenium.By;
public class accessDropDown {
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver", "C:\\geckodriver.exe");
String baseURL = "https://demo.guru99.com/test/newtours/register.php";
WebDriver driver = new FirefoxDriver();
driver.get(baseURL);
// Single-select drop-down
Select drpCountry = new Select(driver.findElement(By.name("country")));
drpCountry.selectByVisibleText("ANTARCTICA");
// Multi-select drop-down
driver.get("http://jsbin.com/osebed/2");
Select fruits = new Select(driver.findElement(By.id("fruits")));
fruits.selectByVisibleText("Banana");
fruits.selectByIndex(1);
}
}
Elemek kijelölése egy Többszörös SELECT elemben
Az selectByVisibleText() A metódus többszörös kijelölésű legördülő menüknél is működik. Példaként használhatja a következőt: https://jsbin.com/osebed/2 mint az alap URLMegjelenik egy legördülő menü, amely egyszerre több kijelölést is elfogad.
Az alábbi kódrészlet az első két lehetőséget választja ki a következő használatával: selectByVisibleText():
Módszerreferencia-táblázat
Ez a táblázat összefoglalja a fent tárgyalt Select osztályú metódusokat a gyors keresés érdekében.
| parancs | Leírás |
|---|---|
| selectByVisibleText() / deselectByVisibleText() | Kijelölt szöveg alapján választ ki vagy szünteti meg a kijelölést egy opciónál. |
| selectByValue() / deselectByValue() | Kijelöl vagy megszüntet egy opciót a value tulajdonság. |
| selectByIndex() / deselectByIndex() | Nulla alapú indexe alapján választ ki vagy szünteti meg egy opció kijelölését. |
| isMultiple() | IGAZ értéket ad vissza, ha a legördülő menü több kiválasztást is lehetővé tesz, egyébként HAMIS értéket. |
| deselect All() | Megszünteti az összes korábban kijelölt opció kijelölését egy többszörös kijelölésű legördülő menüben. |
A legördülő menük kezeléséhez importálja a org.openqa.selenium.support.ui.Select először a csomagot, majd hozz létre egy Select példányt, és hívd meg a fenti metódusok bármelyikét.

.png)
.png)
.png)
.png)