Ebben az oktatóanyagban megnézzük, hogyan lehet azonosítani a következő űrlapelemeket
- Rádiógomb
- Jelölőnégyzet
Rádiógomb
A rádiógombokat is be lehet kapcsolni a click () módszerrel.
A http://demo.guru99.com/test/radio.html gyakorlati használatával nézze meg, hogy a radio1.click () átvált az "Option1" választógombon. A radio2.click () átvált az "Option2" választógombra, így az "Option1" be van jelölve.
Jelölőnégyzet
A jelölőnégyzet be- és kikapcsolása szintén a click () módszerrel történik.
Az alábbi kód kétszer rákattint a Facebook "Tartson bejelentkezve" jelölőnégyzetére, majd az eredmény IGAZként jelenik meg, amikor be van kapcsolva, és HAMIS, ha ki van kapcsolva.
Az isSelected () metódust arra használjuk, hogy megtudjuk, be van-e kapcsolva a Checkbox vagy nincs bejelölve.
Itt van egy másik példa: http://demo.guru99.com/test/radio.html
Teljes kód
Itt van a teljes munkakód
import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;nyilvános osztály űrlappublic static void main (String [] érvel) {// objektumok / változók deklarálása és példányosításaSystem.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");WebDriver illesztőprogram = new ChromeDriver ();driver.get ("http://demo.guru99.com/test/radio.html");WebElement radio1 = driver.findElement (By.id ("vfb-7-1"));WebElement radio2 = driver.findElement (By.id ("vfb-7-2"));// A Rádió gomb1 kiválasztvaradio1.click ();System.out.println ("1. rádiógomb opció kiválasztva");// A Rádió gomb1 kiválasztása törlődik, a Rádió gomb pedig 2 kiválasztásra kerülradio2.kattint ();System.out.println ("2. rádiógomb opció kiválasztva");// A CheckBox kiválasztásaWebElement option1 = driver.findElement (By.id ("vfb-6-0"));// Ez bejelöli a jelölőnégyzetetoption1.click ();// Ellenőrizze, hogy be van-e kapcsolva a Jelölőnégyzetif (option1.isSelected ()) {System.out.println ("A jelölőnégyzet be van kapcsolva");} más {System.out.println ("A jelölőnégyzet ki van kapcsolva");}// A jelölőnégyzet kiválasztása és az isSelected Method használatadriver.get ("http://demo.guru99.com/test/facebook.html");WebElement chkFBPersist = driver.findElement (By.id ("persist_box"));mert (int i = 0; i <2; i ++) {chkFBPersist.click ();System.out.println ("A Facebook továbbra is jelölőnégyzet állapota -" + chkFBPersist.isSelected ());}//driver.close ();}}
Hibaelhárítás
Ha az elemek keresése közben találkozik a NoSuchElementException () paranccsal, az azt jelenti, hogy az elem nem található meg az oldalon abban a pontban, amikor a webillesztõ elérte az oldalt.
- Ellenőrizze újra a helymeghatározót a Firepath vagy a Chrome elem elemével.
- Ellenőrizze, hogy a kódban használt érték eltér-e a Firepath elemhez tartozó értékétől.
- Egyes tulajdonságok kevés elem esetén dinamikusak. Abban az esetben, ha úgy találja, hogy az érték más és dinamikusan változik, fontolja meg a By.xpath () vagy a By.cssSelector () használatát, amelyek megbízhatóbbak, de összetettebbek.
- Előfordulhat, hogy ez egy várakozási kérdés is, azaz a web-illesztőprogram még az oldal teljes betöltése előtt végrehajtotta a kódot, stb.
- Adjon hozzá várakozást a findElement () előtt implicit vagy explicit várakozással.
Összegzés
- Az alábbi táblázat összefoglalja a fent tárgyalt elemtípusok eléréséhez szükséges parancsokat
Elem | Parancs | Leírás |
---|---|---|
Jelölőnégyzet, Rádió gomb | kattintson () | az elem be- és kikapcsolására szolgál |