Ce este Testarea browserului încrucișat?
Testarea browserului încrucișat este un tip de test funcțional pentru a verifica dacă aplicația dvs. web funcționează conform așteptărilor în diferite browsere.
De ce avem nevoie de testarea browserului încrucișat?
Aplicațiile bazate pe web sunt complet diferite de aplicațiile Windows. O aplicație web poate fi deschisă în orice browser de către utilizatorul final. De exemplu, unii oameni preferă să deschidă https://twitter.com în browserul Firefox, în timp ce alții pot folosi browserul Chrome sau IE .
În diagrama de mai jos puteți observa că în IE , caseta de conectare a Twitter nu arată curba la toate colțurile, dar o putem vedea în browserul Chrome.
Deci, trebuie să ne asigurăm că aplicația web va funcționa așa cum era de așteptat în toate browserele populare, astfel încât mai mulți oameni să o poată accesa și utiliza.
Acest motiv poate fi îndeplinit prin testarea produsului pe browserul încrucișat.
Motivul problemelor legate de browser
- Nepotrivirea dimensiunii fontului în diferite browsere.
- Implementarea JavaScript poate fi diferită.
- CSS, diferența de validare HTML poate fi acolo.
- Unele browsere încă nu acceptă HTML5.
- Alinierea paginii și dimensiunea div.
- Orientarea imaginii.
- Incompatibilitatea browserului cu sistemul de operare. Etc.
Cum se efectuează testarea browserului încrucișat
Dacă folosim Selenium WebDriver, putem automatiza cazurile de testare utilizând browserele Internet Explorer, FireFox, Chrome, Safari.
Pentru a executa cazuri de testare cu browsere diferite în aceeași mașină în același timp, putem integra cadrul Testng cu Selenium WebDriver.
Testarea.xml va arăta așa,
Acest testing.xml va mapa cu Test Case care va arăta așa
Aici, deoarece testing.xml are două etichete de test („ChromeTest”, „FirefoxTest”), acest caz de testare se va executa de două ori pentru 2 browsere diferite.
Primul test „ChromeTest” va trece valoarea parametrului „browser” ca „chrome”, astfel încât ChromeDriver va fi executat. Acest caz de testare va rula pe browserul Chrome.
Al doilea test „FirefoxTest” va trece valoarea parametrului „browser” ca „Firefox”, astfel încât FirefoxDriver va fi executat. Acest caz de testare va rula pe browserul FireFox.
Cod complet:
Guru99CrossBrowserScript.java
pachet parallelTest;import java.util.concurrent.TimeUnit;import org.openqa.selenium.By;import org.openqa.selenium.WebDriver;import org.openqa.selenium.WebElement;import org.openqa.selenium.chrome.ChromeDriver;import org.openqa.selenium.edge.EdgeDriver;import org.openqa.selenium.firefox.FirefoxDriver;import org.testng.annotations.BeforeTest;import org.testng.annotations.Parameters;import org.testng.annotations.Test;clasă publică CrossBrowserScript {Driver WebDriver;/ *** Această funcție se va executa înainte de fiecare etichetă de test în testng.xml* browser @param* Excepție @throws* /@BeforeTest@Parameters („browser”)configurarea publică a vidului (browserul String) lansează excepție {// Verificați dacă parametrul trecut de la TestNG este „Firefox”if (browser.equalsIgnoreCase ("firefox")) {// creați o instanță firefoxSystem.setProperty ("webdriver.gecko.driver", ". \\ geckodriver.exe");driver = nou FirefoxDriver ();}// Verificați dacă parametrul a trecut ca „crom”else if (browser.equalsIgnoreCase ("chrome")) {// setați calea la chromedriver.exeSystem.setProperty ("webdriver.chrome.driver", ". \\ chromedriver.exe");// creați o instanță cromatădriver = nou ChromeDriver ();}// Verificați dacă parametrul a fost trecut ca „Edge”else if (browser.equalsIgnoreCase ("Edge")) {// setați calea la Edge.exeSystem.setProperty ("webdriver.edge.driver", ". \\ MicrosoftWebDriver.exe");// creați o instanță Edgedriver = new EdgeDriver ();}altceva {// Dacă nu a trecut niciun browser, aruncați o excepțiearuncă o nouă excepție („Browserul nu este corect”);}driver.manage (). timeouts (). implicit Așteptați (10, TimeUnit.SECONDS);}@Testpublic void testParameterWithXML () aruncă InterruptedException {driver.get ("http://demo.guru99.com/V4/");// Găsiți numele de utilizatorWebElement userName = driver.findElement (By.name ("uid"));// Completați numele de utilizatoruserName.sendKeys ("guru99");// Găsește parolaParola WebElement = driver.findElement (By.name („parolă”));// Completați parolapassword.sendKeys ("guru99");}}
testing.xml
xml version = "1.0" encoding = "UTF-8"?>
NOTĂ: Pentru a rula testul, faceți clic dreapta pe testing.xml, selectați Run As și faceți clic pe TestNG
rezumat
- Testarea cross browser este o tehnică de testare a aplicațiilor web cu diferite browsere web.
- Selenium poate suporta diferite tipuri de browsere pentru automatizare.
- Seleniul poate fi integrat cu TestNG pentru a efectua testarea Multi Browser.
- Din parametrii din testing.xml putem trece numele browserului și, într-un caz de testare, putem crea referința WebDriver în consecință.
Notă: Programul dat a fost construit și testat pe seleniu 3.0.1, Chrome 56.0.2924.87, Firefox 47.0.2 și Microsoft Edge 14.14393. Dacă programele dau o eroare, vă rugăm să actualizați driverul
Descărcați fișierele proiectului Selenium pentru demonstrație în acest tutorial