Jak vybrat zaškrtávací políčko a přepínač v Selenium WebDriver

Obsah:

Anonim

V tomto kurzu uvidíme, jak identifikovat následující prvky formuláře

  • Přepínač
  • Zaškrtávací políčko

Přepínač

Rádiová tlačítka lze také zapnout pomocí metody click ().

Pomocí http://demo.guru99.com/test/radio.html v praxi zjistíte, že radio1.click () přepíná na přepínači „Option1“. radio2.click () přepne na přepínač „Možnost2“ a ponechá možnost „Možnost1“ nevybranou.

Zaškrtávací políčko

Zapnutí / vypnutí zaškrtávacího políčka se také provádí pomocí metody click () .

Níže uvedený kód dvakrát klikne na zaškrtávací políčko „Zachovat přihlášení“ na Facebooku a poté výsledek přepne na TRUE, když je zapnutý, a FALSE, pokud je vypnutý.

Metoda isSelected () se používá ke zjištění, zda je zaškrtávací políčko zapnuto nebo vypnuto.

Zde je další příklad: http://demo.guru99.com/test/radio.html

Kompletní kód

Zde je kompletní pracovní kód

import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium. *;formulář veřejné třídy {public static void main (String [] args) {// deklarace a vytváření instancí objektů / proměnnýchSystem.setProperty ("webdriver.chrome.driver", "G: \\ chromedriver.exe");Ovladač WebDriver = nový 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"));// Je vybráno Radio Button1radio1.click ();System.out.println ("Vybrána možnost přepínače 1");// Radio Button1 je zrušeno a je vybráno Radio Button2radio2.click ();System.out.println ("Je vybrána možnost přepínače 2");// Výběr zaškrtávacího políčkaWebElement option1 = driver.findElement (By.id ("vfb-6-0"));// Tím přepnete zaškrtávací políčkooption1.click ();// Zkontrolujte, zda je zaškrtávací políčko zapnutoif (option1.isSelected ()) {System.out.println ("Zaškrtávací políčko je zapnuto");} else {System.out.println ("Zaškrtávací políčko je vypnuto");}// Zaškrtnutí políčka a použití metody isSelecteddriver.get ("http://demo.guru99.com/test/facebook.html");WebElement chkFBPersist = driver.findElement (By.id ("persist_box"));pro (int i = 0; i <2; i ++) {chkFBPersist.click ();System.out.println ("Facebook zůstává stav zaškrtávacího políčka je -" + chkFBPersist.isSelected ());}//driver.close ();}}

Odstraňování problémů

Pokud při hledání prvků narazíte na NoSuchElementException (), znamená to, že prvek není na stránce nalezen v okamžiku, kdy webový ovladač přistupoval ke stránce.

  1. Zkontrolujte svůj lokátor znovu pomocí Firepath nebo Inspect Element v prohlížeči Chrome.
  2. Zkontrolujte, zda se hodnota použitá v kódu liší od hodnoty pro prvek ve Firepath.
  3. Některé vlastnosti jsou dynamické pro několik prvků. V případě, že zjistíte, že hodnota je jiná a dynamicky se mění, zvažte použití By.xpath () nebo By.cssSelector (), což jsou spolehlivější, ale složitější způsoby.
  4. Někdy to může být také problém s čekáním, tj. Webový ovladač spustil váš kód ještě před úplným načtením stránky atd.
  5. Přidejte čekání před findElement () pomocí implicitního nebo explicitního čekání.

souhrn

  • Níže uvedená tabulka shrnuje příkazy pro přístup ke každému typu prvku diskutovanému výše
Živel Příkaz Popis
Zaškrtávací políčko, přepínač klikněte () slouží k zapnutí / vypnutí prvku