Kuidas valida seleeniveebi draiveris märkeruut ja raadionupp

Lang L: none (table-of-contents):

Anonim

Selles õpetuses näeme, kuidas tuvastada järgmisi vormielemente

  • Raadio nupp
  • Märkeruut

Raadio nupp

Ka raadionuppe saab sisse lülitada, kasutades meetodit click ().

Kasutades harjutamiseks http://demo.guru99.com/test/radio.html, vaadake, et radio1.click () vahetab raadionuppu "Variant1". radio2.click () lülitab raadionupu „Option2“ sisse, jättes valiku „Option1“ valimata.

Märkeruut

Märkekasti sisse- ja väljalülitamine toimub ka meetodi click () abil.

Allolev kood klõpsab kaks korda Facebooki märkeruudul "Hoidke mind sisselogituna" ja väljastab tulemuse siis TÕENE, kui see on sisse lülitatud, ja FALSE, kui see on välja lülitatud.

isSelected () meetodit kasutatakse selleks, et teada saada, kas märkeruut on sisse või välja lülitatud.

Siin on veel üks näide: http://demo.guru99.com/test/radio.html

Täielik kood

Siin on täielik töökood

import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;avaliku klassi vorm {public staatiline void main (String [] args) {// objektide / muutujate deklaratsioon ja eksemplarSystem.setProperty ("veebidraiver.chrome.driver", "G: \\ chromedriver.exe");WebDriveri draiver = uus 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"));// Raadionupp1 on valitudraadio1.klõps ();System.out.println ("Raadionupu valik 1 on valitud");// Raadionupp1 on valimata ja raadionupp 2 on valitudraadio2.klõps ();System.out.println ("Raadionupu valik 2 on valitud");// CheckBoxi valimineWebElementi valik1 = driver.findElement (By.id ("vfb-6-0"));// See lülitab ruutu sisse / väljavalik1.klõpsake ();// Kontrollige, kas märkeruut on sisse lülitatudif (variant1.isSelected ()) {System.out.println ("märkeruut on sisse lülitatud");} veel {System.out.println ("märkeruut on välja lülitatud");}// Märkekasti valimine ja isSelected meetodi kasutaminedriver.get ("http://demo.guru99.com/test/facebook.html");WebElement chkFBPersist = driver.findElement (By.id ("persist_box"));jaoks (int i = 0; i <2; i ++) {chkFBPersist.click ();System.out.println ("Facebooki püsiva märkeruudu olek on -" + chkFBPersist.isSelected ());}//driver.close ();}}

Tõrkeotsing

Kui kohtate elementide otsimisel funktsiooni NoSuchElementException (), tähendab see, et elementi ei leitud lehelt selles punktis, kuhu veebidraiver lehele juurde pääses.

  1. Kontrollige oma lokaatorit uuesti, kasutades Firefoxi Firepathi või Inspect Elementi.
  2. Kontrollige, kas koodis kasutatud väärtus erineb nüüd Firepathi elemendi väärtusest.
  3. Mõned omadused on dünaamilised mõne elemendi jaoks. Juhul kui leiate, et väärtus on erinev ja muutub dünaamiliselt, kaaluge usaldusväärsemaid, kuid keerukamaid viise By.xpath () või By.cssSelector ().
  4. Mõnikord võib see olla ka ootamise probleem, st veebidraiver käivitas teie koodi juba enne lehe täielikku laadimist jne.
  5. Lisage kaudne või selgesõnaline ootamine enne findElement () -i ootamist.

Kokkuvõte

  • Allpool olev tabel võtab kokku käsud igale eespool käsitletud elemendi tüübile juurdepääsemiseks
Element Käsk Kirjeldus
Märkeruut, raadionupp klõpsake () kasutatakse elemendi sisse / välja lülitamiseks