În acest tutorial, vom vedea cum să identificăm următoarele elemente de formular
- Buton de radio
- Caseta de bifat
Buton de radio
Și butoanele radio pot fi activate utilizând metoda click ().
Folosind http://demo.guru99.com/test/radio.html pentru practică, vedeți că radio1.click () comută pe butonul radio „Option1”. radio2.click () comută pe butonul radio „Option2” lăsând „Option1” neselectat.
Caseta de bifat
Activarea / dezactivarea unei casete de selectare se face și folosind metoda click () .
Codul de mai jos va face clic pe caseta de selectare „Ține-mă conectat” de Facebook de două ori și apoi va afișa rezultatul ca fiind ADEVĂRAT atunci când este activat și FALS dacă este activat.
metoda isSelected () este utilizată pentru a ști dacă Caseta de selectare este activată sau dezactivată.
Iată un alt exemplu: http://demo.guru99.com/test/radio.html
Cod complet
Iată codul complet de lucru
import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;formular de clasă publică {public static main main (String [] args) {// declararea și instanțierea obiectelor / variabilelorSystem.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");Driver WebDriver = nou 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"));// Butonul Radio1 este selectatradio1.click ();System.out.println („Opțiunea 1 a butonului radio selectat”);// Butonul Radio1 este deselectat și butonul Radio2 este selectatradio2.click ();System.out.println („Opțiunea 2 a butonului radio selectat”);// Selectarea CheckBoxOpțiunea WebElement1 = driver.findElement (By.id ("vfb-6-0"));// Aceasta va comuta caseta de selectareopțiune1.click ();// Verificați dacă este activată caseta Verificareif (option1.isSelected ()) {System.out.println („Caseta de selectare este activată”);} altceva {System.out.println („Caseta de selectare este dezactivată”);}// Selectarea casetei de selectare și utilizarea isSelected Methoddriver.get ("http://demo.guru99.com/test/facebook.html");WebElement chkFBPersist = driver.findElement (By.id ("persist_box"));for (int i = 0; i <2; i ++) {chkFBPersist.click ();System.out.println („Facebook persistă în starea casetei de selectare -” + chkFBPersist.isSelected ());}//driver.close ();}}
Depanare
Dacă întâlniți NoSuchElementException () în timp ce găsiți elemente, înseamnă că elementul nu se găsește în pagină în punctul în care driverul Web a accesat pagina.
- Verificați din nou localizatorul dvs. folosind Firepath sau Inspect Element în Chrome.
- Verificați dacă valoarea pe care ați folosit-o în cod este diferită de cea pentru elementul din Firepath acum.
- Unele proprietăți sunt dinamice pentru câteva elemente. În cazul în care constatați că valoarea este diferită și se schimbă dinamic, luați în considerare utilizarea By.xpath () sau By.cssSelector (), care sunt modalități mai fiabile, dar mai complexe.
- Uneori, ar putea fi și o problemă de așteptare, adică driverul Web a executat codul dvs. chiar înainte ca pagina să fie încărcată complet etc.
- Adăugați o așteptare înainte de findElement () folosind așteptări implicite sau explicite.
rezumat
- Tabelul de mai jos rezumă comenzile pentru accesarea fiecărui tip de element discutat mai sus
Element | Comanda | Descriere |
---|---|---|
Caseta de selectare, butonul radio | clic() | folosit pentru a activa / dezactiva elementul |