Vyberte přepínač a zaškrtněteBox in Selenium
Přepínač dovnitř Selenium
Přepínače lze také zapnout pomocí metody click().
Použití https://demo.guru99.com/test/radio.html pro praxi se podívejte, že radio1.click() přepíná na přepínač „Option1“. radio2.click() přepne na přepínač „Option2“ a ponechá volbu „Option1“ nevybranou.
Jak vybrat zaškrtávací políčko v Selenium
TogglZapnutí/vypnutí zaškrtávacího políčka se také provádí pomocí klikni() metoda.
Níže uvedený kód dvakrát klikne na zaškrtávací políčko „Nechte mě přihlášeného“ na Facebooku a pak výsledek vydá jako PRAVDA, když je zapnuto, a NEPRAVDA, pokud je vypnuto.
Metoda isSelected() se používá ke zjištění, zda je zaškrtávací políčko zapnuto nebo vypnuto.
Zde je další příklad: https://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.*;
public class Form {
public static void main(String[] args) {
// declaration and instantiation of objects/variables
System.setProperty("webdriver.chrome.driver","G:\\chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://demo.guru99.com/test/radio.html");
WebElement radio1 = driver.findElement(By.id("vfb-7-1"));
WebElement radio2 = driver.findElement(By.id("vfb-7-2"));
//Radio Button1 is selected
radio1.click();
System.out.println("Radio Button Option 1 Selected");
//Radio Button1 is de-selected and Radio Button2 is selected
radio2.click();
System.out.println("Radio Button Option 2 Selected");
// Selecting CheckBox
WebElement option1 = driver.findElement(By.id("vfb-6-0"));
// This will Toggle the Check box
option1.click();
// Check whether the Check box is toggled on
if (option1.isSelected()) {
System.out.println("Checkbox is Toggled On");
} else {
System.out.println("Checkbox is Toggled Off");
}
//Selecting Checkbox and using isSelected Method
driver.get("https://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 Persists Checkbox Status is - "+chkFBPersist.isSelected());
}
//driver.close();
}
}
Odstraňování poruch
Pokud se při hledání prvků setkáte s NoSuchElementException(), znamená to, že prvek nebyl na stránce nalezen v okamžiku, kdy webový ovladač přistupoval ke stránce.
- Znovu zkontrolujte svůj lokátor pomocí Firepath nebo Inspect Element v Chrome.
- Zkontrolujte, zda se hodnota, kterou jste použili v kódu, liší od hodnoty pro prvek ve Firepath nyní.
- Některé vlastnosti jsou dynamické pro několik prvků. V případě, že zjistíte, že se hodnota liší a dynamicky se mění, zvažte použití By.xpath() nebo By.cssSelector(), které jsou spolehlivější, ale složitější způsoby.
- Někdy to může být také problém s čekáním, tj. webový ovladač provedl váš kód ještě před úplným načtením stránky atd.
- Přidejte čekání před findElement() pomocí implicitních nebo explicitních čekání.
Shrnutí
- Níže uvedená tabulka shrnuje příkazy pro přístup ke každému typu prvku diskutovanému výše
| Prvek | Příkaz | Description |
|---|---|---|
| Kontrola Box, Tlačítko na rádiu | klikni() | slouží k zapínání/vypínání prvku |




