selenium assertion examples practical applications projects
In questo tutorial, discuteremo come utilizzare le asserzioni in vari scenari di progetto in tempo reale:
- Per verificare se un oggetto è visibile (pulsante, collegamento, avviso).
- Per verificare se è presente un testo o un valore.
- Per verificare se una casella di controllo o un pulsante di opzione è selezionato / deselezionato.
- Per verificare se un oggetto è modificabile.
=> Dai un'occhiata alla guida all'addestramento del selenio perfetto qui.
Cosa imparerai:
- Utilizzo delle asserzioni - Tutorial video
- Asserzioni Esempi pratici
- Verifica negli script
- Conclusione
Utilizzo delle asserzioni - Tutorial video
Asserzioni Esempi pratici
Gestiremo questi scenari utilizzando funzioni come:
- È visualizzato() - Viene utilizzato per verificare la presenza di un elemento nella pagina web. Restituisce un valore vero se l'elemento è presente.
- è selezionato() -Questo metodo determina se un elemento è selezionato o meno. Restituisce vero se l'elemento è selezionato e falso se non lo è. È ampiamente utilizzato su caselle di controllo, pulsanti di opzione e opzioni in una selezione.
- è abilitato() - Viene utilizzato per verificare se una particolare casella di testo è modificabile o disponibile per l'interazione dell'utente. Restituisce vero se un utente è in grado di inserire dati in esso, altrimenti se è disabilitato, restituisce un valore falso.
Clic Qui per un esempio di test case per il sito web irctc.
# 1) Per verificare se un oggetto è visibile:
Per verificare la presenza di un oggetto, possiamo usare isDisplayed () per determinarne lo stato.
@Test public void verifyLogo() { WebDriver driver = new FirefoxDriver(); driver.get(“https://www.irctc.co.in”); WebElement IrctcLogo = driver.findElement(By.Id(“irctclogo”)); Assert.assertEquals(true, IrctcLogo.isDisplayed()); System.out.println(“IRCTC logo is displayed – Assert passed”); }
Qui, IrctcLogo è il WebElement e afferma se quell'elemento è visualizzato.
AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, è il valore booleano (vero).
Valore atteso: vero
Valore attuale: IrctcLogo.isDisplayed () - restituisce T / F a seconda della sua disponibilità sulla pagina web.
Lo stesso può essere verificato utilizzando AssertTrue (IrctcLogo.isDisplayed ());
Qui, afferma che una vera condizione booleana, ovvero IrctcLogo.isDisplayed () è True.
# 2) Per verificare se è presente testo o valore:
Per verificare la presenza di un determinato testo / valore, possiamo ottenere il testo di un elemento dal codice sorgente HTML utilizzando il metodo getText () e confrontarlo con la stringa prevista.
@Test public void verifyLogo() { WebDriver driver = new FirefoxDriver(); driver.get(“https://www.irctc.co.in”); WebElement IrctcLogo = driver.findElement(By.Id(“irctclogo”)); String ExpectedText = “IRCTC railways”; Assert.assertEquals(ExpectedText, IrctcLogo.getText()); System.out.println(“IRCTC text is a expected – Assert passed”); }
Qui, IrctcLogo è l'elemento web e afferma se quegli elementi contengono un testo visualizzato come 'Ferrovie IRCTC'.
AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, è un valore stringa (ferrovie IRCTC)
Valore atteso: Ferrovie IRCTC
Valore attuale: IrctcLogo.getText () - restituisce il testo dell'elemento - IrctcLogo dalla pagina web
# 3) Per verificare se la casella di controllo o il pulsante di opzione è selezionato / deselezionato
Per verificare lo stato della casella di controllo, possiamo usare isSelected () per comprenderne lo stato.
Pagina HTML di esempio: (sample.html)
Sample Page
Milk
Butter
Cheese
Water
Juice
Ice
Pulsante di opzione - Selezionato:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Butter = driver.findElement(By.Id(“Butter”)); Butter.click(); //clicks on the radio button of Butter Assert.assertEquals(true, Butter.isSelected()); //Verifies that the radio button is selected after action System.out.println(“Radio button is selected – Assert passed”); }
In questo caso, Butter si riferisce a un pulsante di opzione WebElement e afferma se l'elemento è selezionato. AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, afferma per un valore booleano (vero)
Valore atteso: vero
Valore attuale: Butter.isSelected () - restituisce vero / falso a seconda che il pulsante di opzione sia selezionato o meno.
Lo stesso può essere verificato utilizzando AssertTrue (Butter.isSelected ());
Qui, afferma che una vera condizione booleana, ovvero Butter.isSelected (), è True.
Pulsante di opzione - Non selezionato:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Milk = driver.findElement(By.Id(“Milk”)); //Verifies that the radio button is not selected Assert.assertEquals(false, Milk.isSelected()); System.out.println(“Radio button is not selected – Assert passed”); }
Assert.assertEquals (false, Milk.isSelected ()); Al contrario, per affermare se il pulsante di opzione non è selezionato, possiamo usare assert per un valore di ritorno False.
Lo stesso può essere verificato utilizzando Assert.assertEquals (false, Milk.isSelected ());
Qui, afferma che una condizione booleana falsa, ovvero Milk.isSelected () è falsa.
Lo stesso può essere utilizzato anche per verificare le caselle di controllo.
Casella di controllo - Selezionato:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Juice = driver.findElement(By.Id(“Juice”)); Juice.click(); //clicks on the radio button of Juice Assert.assertEquals(true, Juice.isSelected()); //Verifies that the checkbox is selected after action System.out.println(“Checkbox is selected – Assert passed”); }
Qui, Juice alla casella di controllo WebElement e afferma se l'elemento è selezionato.
AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, afferma per un valore booleano (vero).
Valore atteso: vero
Valore attuale: Juice.isSelected () - restituisce vero / falso a seconda che il pulsante di opzione sia selezionato o meno.
Lo stesso può essere verificato utilizzando Assert.assertEquals (true, Juice.isSelected ())
Qui, afferma che una vera condizione booleana, cioè Juice.isSelected () è True.
CheckBox - Non selezionato:
@Test public void verifyElementSelection() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\sample.html'); WebElement Water = driver.findElement(By.Id(“Water”)); Water.click(); //clicks on the radio button of Juice Assert.assertEquals(true, Water.isSelected()); //Verifies that the checkbox is selected after action System.out.println(“Checkbox is selected – Assert passed”); }
Assert.assertEquals (false, Water.isSelected ()); Al contrario, per affermare se la casella di controllo non è selezionata, possiamo usare assert per un valore di ritorno False.
Lo stesso può essere verificato utilizzando Assert.assertEquals (false, Water.isSelected ());
Qui, afferma che una falsa condizione booleana, ovvero Water.isSelected () è falsa.
# 4) Per verificare se l'oggetto è modificabile
Viene utilizzato per verificare se un elemento è disponibile con cui interagire. Per verificare, possiamo usare il metodo isEnabled (). Questo metodo può essere utilizzato per qualsiasi WebElement come casella di testo, pulsante di opzione, pulsante, menu a discesa, ecc.
Pagina di esempio: (login.html)
miglior convertitore video gratuito per Windows 7
Username Password Login Remember me Cancel Forgot password?
Verifica se l'elemento è abilitato:
@Test public void verifyElementEditable() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\login.html'); WebElement Password = driver.findElement(By.Name(“passwordtext”)); Assert.assertEquals(true, Username.isEnabled()); //Verifies that the textbox elementis enabled System.out.println(“Element is enabled – Assert passed”); }
Qui, la password è l'elemento web di una casella di testo e afferma se quell'elemento non è disabilitato.
AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, è il valore booleano (vero)
Valore atteso: vero
Valore attuale: Username.isEnabled () - restituisce T / F a seconda che la casella di testo sia disponibile per la modifica / digitazione.
Lo stesso può essere verificato utilizzando Assert.assertEquals (true, Username.isEnabled ())
Qui, afferma che una vera condizione booleana, ovvero Username.isEnabled (), è True.
Verifica se l'elemento è disabilitato:
@Test public void verifyElementEditable() { WebDriver driver = new FirefoxDriver(); driver.get('C:\Users\UserName\Desktop\login.html'); WebElement RememberMe = driver.findElement(By.Name(“rememberMe”)); Assert.assertEquals(false, RememberMe.isEnabled()); //Verifies that element is disabled System.out.println(“Element is Disbaled – Assert passed”); }
In questo caso, RememberMe è l'elemento web di una casella di testo e afferma se quell'elemento non è disabilitato.
AssertEquals verifica che il valore previsto e quello effettivo siano uguali. In questo caso, è il valore booleano (falso).
Valore atteso: falso
Valore attuale: RememberMe.isEnabled () - restituisce T / F a seconda che l'elemento sia disponibile per l'interazione / abilitato.
Lo stesso può essere verificato utilizzando Assert.assertEquals (false, RememberMe.isEnabled ()).
Qui, afferma che una falsa condizione booleana, ovvero RememberMe.isEnabled (), è False.
Verifica negli script
Verify è una classe, utilizzata per confrontare i risultati dei test attesi ed effettivi come fa la classe assert, ma quando fallisce non interrompe l'esecuzione del test, continua a eseguire i casi di test. In Selenium Web Driver si ottiene utilizzando Soft Assertion.
Verifica gli elementi in Selenium Web Driver
1. Pochi comandi di verifica disponibili in Selenium IDE e Selenium RC lo sono
- verificaTestoPresente / VerificaTestoNotPresente
- verificareElementPresent / verifyElementNotPresent
2. Quindi in Selenium Web Driver, se vogliamo verificare i risultati senza che lo script venga terminato, usa Soft Assertion. O
3. Possiamo usare i comandi Selenium Web Driver. Fare riferimento al codice sottostante che verificherà
- Il testo meteorologico è presente o meno
- L'elemento meteorologico è presente o meno
package com.wordpress.pages; import java.util.List; import org.junit.Assert; import org.junit.Test; import org.openqa.selenium.By; import org.openqa.selenium.Web Driver; import org.openqa.selenium.WebElement; import org.openqa.selenium.chrome.ChromeDriver; public class LearnAssertion { static Web Driver driver; @Test public void Test(){ System.setProperty('Web Driver.chrome.driver', 'D:\New folder\exe\chromedriver.exe'); driver = new ChromeDriver(); driver.get('https://www.ksrtc.in/oprs-web/'); //Verify Title of the Site String Expected_Title ='KSRTC Official Website for Online Bus Ticket Booking - KSRTC.in'; String Actual_Title = driver.getTitle(); Assert.assertEquals(Expected_Title, Actual_Title); //Verify Text or the element 'Home' 'PNR Enquiry' 'Cancel Tickets' 'KSTDC Package Tours' 'About Us' //'Contact US' is present of the Site List Tab = driver.findElements(By.xpath('//div(@class='menu')//a')); for(int i=1;i<=Tab.size();i++){ WebElementTab_Name=driver.findElement(By.xpath('(//div(@class='menu')//a)('+i+')')); Tab_Name.isDisplayed(); String Tab_Value = Tab_Name.getText(); System.out.println(Tab_Value); if(Tab_Value.equalsIgnoreCase('HOME')){ System.out.println('HOME tab is present'); break; } else {System.out.println('HOME tab is not present'); } } }}
Quando utilizzare comando asset / comandi di verifica
1. Usa i comandi Assert per assicurarti che il tuo test case stia andando nella direzione corretta, significa che la configurazione utente corretta è caricata o la pagina giusta è caricata o l'ambiente giusto è caricato e così via.
2. Utilizza i comandi di verifica per confrontare i risultati del test con i valori di output, ad esempio l'accesso alla pagina sbagliata e qualsiasi verifica eseguita non andrà a buon fine
3. Raggruppa logicamente i comandi di test e avvia ogni gruppo con 'asserisci' e 'verifica' i contenuti
Conclusione
Come discusso in precedenza, abbiamo visto varie applicazioni pratiche dei metodi di asserzione che possono essere utilizzati per la convalida del caso di test. Pertanto, le asserzioni ci aiutano con una verifica del caso di test e garantiscono se il test ha uno stato Riuscito o Non superato.
=> Controlla qui per vedere i tutorial di formazione dalla A alla Z del selenio qui.
Lettura consigliata
- Selenio Trova elemento per tutorial di testo con esempi
- 30+ Migliori tutorial sul selenio: impara il selenio con esempi reali
- Quadro basato su parole chiave in selenio con esempi
- Tutorial GeckoDriver Selenium: come utilizzare GeckoDriver nei progetti Selenium
- Localizzatori di selenio: identificare gli elementi web utilizzando XPath in selenio (esempi)
- Esplora gli elementi essenziali di Java in selenio con esempi
- Scopri come utilizzare le annotazioni TestNG in selenio (con esempi)
- Guida ai test di portabilità con esempi pratici