Valige raadionupp ja märkigeBox in Selenium
⚡ Nutikas kokkuvõte
Valige raadionupp ja märkigeBox in Selenium käsitleb WebDriveri tehnikaid kahe kõige levinuma vormikontrolli automatiseerimiseks. See õpetus selgitab, kuidas meetodid click() ja isSelected() lülitavad sisse/välja raadioid ja märkeruute, tutvustab nende toimimist. Java kood ja jagab tõrkeotsingu näpunäiteid habraste lokaatorite kohta.

Raadio nupp sisse Selenium
Raadionuppe saab sisse lülitada, kasutades click() meetod, nagu iga teine veebielement SeleniumKuna raadiogrupis saab korraga olla aktiivne ainult üks suvand, tühistab teise suvandi klõpsamine automaatselt esimese valiku.
Kasutamine https://demo.guru99.com/test/radio.html harjutuslehena pange tähele, et radio1.click() valib raadionupu „Valik 1”. Helistamine radio2.click() seejärel valib „Valik 2“, jättes „Valik 1“ valimata.
Kuidas valida märkeruut Selenium
TogglMärkeruudu sisse või välja lülitamine toimub ka nupu abil. click() meetod. Allolev kood klõpsab kaks korda Facebooki märkeruudul „Hoia mind sisselogituna“ ja kuvab väärtuse TRUE, kui märkeruut on sisse lülitatud, ja FALSE, kui see on välja lülitatud.
. isSelected() Meetodit kasutatakse märkeruudu sisse- või väljalülitamise kinnitamiseks – see on oluline väide vormi oleku valideerimisel testides.
Siin on veel üks näidisleht: https://demo.guru99.com/test/radio.html.
täielik Code Näide
Siin on täielik toimiv kood, mis lülitab sisse nii raadionupud kui ka Facebooki persist-login märkeruudu.
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 and 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 Button 1 is selected
radio1.click();
System.out.println("Radio Button Option 1 Selected");
// Radio Button 1 is de-selected and Radio Button 2 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 checkbox
option1.click();
// Check whether the checkbox is toggled on
if (option1.isSelected()) {
System.out.println("Checkbox is Toggled On");
} else {
System.out.println("Checkbox is Toggled Off");
}
// Selecting a Checkbox and using the 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();
}
}
Probleemid
Kui kohtate NoSuchElementException Elementide leidmisel tähendab see, et element ei olnud WebDriveri lehele ligipääsemise hetkel olemas. Kiireks taastamiseks kasutage allolevat kontroll-loendit:
- Kontrollige oma lokaatorit uuesti FirePathi või Chrome'i Inspect Elementi abil.
- Veenduge, et koodis kasutatud väärtus vastab lehel oleva elemendi praegusele väärtusele.
- Mõnel elemendil on dünaamilised atribuudid, mis sarnanevad sellele, mida võite näha siis, kui valige rippmenüü Selenium VeebidraiverSellistel juhtudel eelistage
By.xpath()orBy.cssSelector(), mis on usaldusväärsemad, kuid veidi keerukamad. - Mõnikord on probleemiks ajastus – WebDriver käivitas teie koodi enne lehe laadimise lõppu.
- Lisa ooteaeg enne
findElement()kasutades elemendi renderdamiseks aega andmiseks nii otseseid kui ka kaudseid ooteaegu.




