Πώς να επιλέξετε το κουμπί και τον έλεγχοBox in Selenium

Κουμπί ραδιοφώνου μέσα Selenium

Μπορούν επίσης να είναι και τα κουμπιά ραδιοφώνου togglσυνεχίζεται χρησιμοποιώντας τη μέθοδο click().

Χρησιμοποιώντας https://demo.guru99.com/test/radio.html για εξάσκηση, δείτε ότι radio1.click() togglστο κουμπί επιλογής "Επιλογή1". radio2.click() togglείναι στο κουμπί επιλογής «Option2» αφήνοντας μη επιλεγμένο το «Option1».

Κουμπί ραδιοφώνου μέσα Selenium

Πώς να επιλέξετε Έλεγχοςbox in Selenium

Togglσε μια επιταγή box Η ενεργοποίηση/απενεργοποίηση γίνεται επίσης χρησιμοποιώντας το Κάντε κλικ() μέθοδος.

Ο παρακάτω κωδικός θα κάνει κλικ στον έλεγχο "Keep me log in" του Facebook box δύο φορές και μετά βγάζουμε το αποτέλεσμα ως TRUE όταν είναι toggled on, και FALSE αν είναι togglαπενεργοποιήθηκε.

Επιλέξτε Έλεγχοςbox In Selenium

Επιλέξτε Έλεγχοςbox In Selenium

Η μέθοδος isSelected() χρησιμοποιείται για να γνωρίζουμε εάν ο Έλεγχοςbox is toggled on ή off.

Εδώ είναι ένα άλλο παράδειγμα: https://demo.guru99.com/test/radio.html

Επιλέξτε Έλεγχοςbox In Selenium

Πλήρης κώδικας

Εδώ είναι ο πλήρης κώδικας εργασίας

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();		
        		
    }		
}

Αντιμετώπιση προβλημάτων

Εάν συναντήσετε NoSuchElementException() κατά την εύρεση στοιχείων, σημαίνει ότι το στοιχείο δεν βρίσκεται στη σελίδα στο σημείο που το πρόγραμμα οδήγησης Web είχε πρόσβαση στη σελίδα.

  1. Ελέγξτε ξανά τον εντοπιστή σας χρησιμοποιώντας το Firepath ή το Inspect Element στο Chrome.
  2. Ελέγξτε αν η τιμή που χρησιμοποιήσατε στον κώδικα είναι διαφορετική από αυτή για το στοιχείο στο Firepath τώρα.
  3. Ορισμένες ιδιότητες είναι δυναμικές για λίγα στοιχεία. Σε περίπτωση που διαπιστώσετε ότι η τιμή είναι διαφορετική και αλλάζει δυναμικά, σκεφτείτε να χρησιμοποιήσετε By.xpath() ή By.cssSelector() που είναι πιο αξιόπιστα αλλά complex τρόπους.
  4. Μερικές φορές, μπορεί να είναι και πρόβλημα αναμονής, π.χ., το πρόγραμμα οδήγησης Web εκτέλεσε τον κώδικά σας ακόμη και πριν ολοκληρωθεί η φόρτωση της σελίδας, κ.λπ.
  5. Προσθέστε μια αναμονή πριν από το findElement() χρησιμοποιώντας σιωπηρές ή ρητές αναμονές.

Χαρακτηριστικά

  • Ο παρακάτω πίνακας άθροισμαmariδίνει τις εντολές για πρόσβαση σε κάθε τύπο στοιχείου που συζητήθηκε παραπάνω
Στοιχείο εντολή Περιγραφή
Έλεγχος Box, Κουμπί ραδιοφώνου Κάντε κλικ() συνηθισμένος toggle το στοιχείο on/off