Cross Browser Testing using Selenium WebDriver

Obsah:

Anonim

Čo je to Cross Browser Testing?

Cross Browser Testing je typ funkčného testu na kontrolu, či vaša webová aplikácia funguje podľa očakávaní v rôznych prehľadávačoch.

Prečo potrebujeme testovanie viacerých prehľadávačov?

Webové aplikácie sa úplne líšia od aplikácií pre Windows. Koncový používateľ môže otvoriť webovú aplikáciu v ľubovoľnom prehliadači. Niektorí ľudia napríklad uprednostňujú otvorenie stránky https://twitter.com v prehliadači Firefox, zatiaľ čo iní môžu používať prehliadač Chrome alebo IE .

Na diagrame nižšie môžete vidieť, že v prehliadači IE prihlasovacie pole Twitteru nezobrazuje krivku vo všetkých rohoch, ale môžeme ho vidieť v prehliadači Chrome.

Musíme teda zabezpečiť, aby webová aplikácia fungovala podľa očakávaní vo všetkých populárnych prehľadávačoch, aby k nej malo prístup viac ľudí a mohla ju používať.

Tento motív je možné splniť testom produktu Cross Browser.

Dôvod Problémy s rôznymi prehliadačmi

  1. Nezhoda veľkosti písma v rôznych prehliadačoch.
  2. Implementácia JavaScriptu môže byť odlišná.
  3. Môže tu byť rozdiel v overení CSS a HTML.
  4. Niektoré prehliadače stále nepodporujú formát HTML5.
  5. Zarovnanie stránky a veľkosť div.
  6. Orientácia obrázka.
  7. Nekompatibilita prehliadača s OS. Atď.

Ako vykonať testovanie medzi prehliadačmi

Pokiaľ používame Selenium WebDriver, môžeme testovacie prípady automatizovať pomocou prehliadačov Internet Explorer, FireFox, Chrome, Safari.

Na vykonávanie testovacích prípadov s rôznymi prehliadačmi v rovnakom stroji súčasne môžeme integrovať rámec Testng so selénom WebDriver.

Váš súbor testing.xml bude vyzerať takto,

Tento soubor testing.xml sa bude mapovať s testovacím prípadom, ktorý bude vyzerať takto

Pretože testing.xml má dve testovacie značky („ChromeTest“, „FirefoxTest“), tento testovací prípad sa vykoná dvakrát pre 2 rôzne prehliadače.

Prvý test „ChromeTest“ odovzdá hodnotu parametra „prehliadač“ ako „chróm“, aby sa spustil ChromeDriver. Tento testovací prípad sa spustí v prehliadači Chrome.

Druhý test „FirefoxTest“ odovzdá hodnotu parametra „prehliadač“ ako „Firefox“, takže sa spustí FirefoxDriver. Tento testovací prípad bude bežať v prehliadači FireFox.

Kompletný kód:

Guru99CrossBrowserScript.java

balíček 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;verejná trieda CrossBrowserScript {Ovládač WebDriver;/ *** Táto funkcia sa spustí pred každou testovacou značkou v testng.xml* @param prehliadač* @hodí výnimku* /@BeforeTest@Parameters („prehliadač“)nastavenie public void (reťazcový prehliadač) vyvolá výnimku {// Skontrolujte, či je parameter odovzdaný z TestNG „firefox“if (browser.equalsIgnoreCase ("firefox")) {// vytvorenie inštancie firefoxuSystem.setProperty ("webdriver.gecko.driver", ". \\ geckodriver.exe");ovládač = nový FirefoxDriver ();}// Skontrolujte, či parameter prešiel ako „chróm“else if (browser.equalsIgnoreCase ("chrome")) {// nastaviť cestu k chromedriver.exeSystem.setProperty ("webdriver.chrome.driver", ". \\ chromedriver.exe");// vytvorenie chrómovej inštancieovládač = nový ChromeDriver ();}// Skontrolujte, či parameter prešiel ako „Edge“else if (browser.equalsIgnoreCase ("Edge")) {// nastaviť cestu k Edge.exeSystem.setProperty ("webdriver.edge.driver", ". \\ MicrosoftWebDriver.exe");// vytvorenie inštancie Edgevodič = nový EdgeDriver ();}else {// Ak neprešiel žiadny prehliadač, hodí výnimkavyvolať novú výnimku („Prehliadač nie je správny“);}driver.manage (). timeouts (). implicitlyWait (10, TimeUnit.SECONDS);}@Testpublic void testParameterWithXML () hodí InterruptedException {driver.get ("http://demo.guru99.com/V4/");// Nájsť užívateľské menoWebElement userName = driver.findElement (By.name ("uid"));// Vyplňte meno používateľauserName.sendKeys ("guru99");// Nájsť hesloHeslo WebElement = driver.findElement (By.name ("heslo"));// Vyplňte hesloheslo.sendKeys ("guru99");}}

testovanie.xml







POZNÁMKA: Ak chcete spustiť test, kliknite pravým tlačidlom myši na soubor testing.xml , vyberte príkaz Spustiť ako a kliknite na položku TestNG

Zhrnutie

  1. Testovanie medzi prehliadačmi je technika testovania webových aplikácií s rôznymi webovými prehľadávačmi.
  2. Selén môže pre automatizáciu podporovať rôzne typy prehľadávačov.
  3. Selén možno integrovať do TestNG na vykonávanie testovania viacerých prehľadávačov.
  4. Z parametrov v testing.xml môžeme odovzdať názov prehliadača a v testovacom prípade môžeme podľa toho vytvoriť referenciu na WebDriver.

Poznámka: Daný program bol zostavený a testovaný na seléne 3.0.1, Chrome 56.0.2924.87, Firefox 47.0.2 a Microsoft Edge 14.14393. Ak sa v programoch vyskytne chyba, aktualizujte ovládač

Stiahnite si súbory projektu Selenium pre ukážku v tomto výučbe