A kívánt képességek Selenium webdriver

Mi a kívánt képességek?

Kívánt képességek osztály a Selenium a böngészők tulajdonságainak beállítására szolgál a webalkalmazások böngészők közötti teszteléséhez. A képességeket kulcs-érték párokként tárolja, és ezekkel a képességekkel állíthatja be a böngésző tulajdonságait, például a böngésző nevét, verzióját, a böngésző illesztőprogramjának elérési útját a rendszerben stb., hogy meghatározza a böngésző viselkedését futás közben.

  • A kívánt képesség az illesztőprogram-példány konfigurálására is használható Selenium WebDriver.
  • Konfigurálhatunk illesztőprogram-példányt FirefoxIllesztőprogram, ChromeDriver, InternetExplorerDriver a kívánt képességek használatával.

Miért van szükségünk a kívánt képességekre?

Kívánt képességek szükség van, mert minden Tesztelés forgatókönyvet valamilyen meghatározott tesztelési környezetben kell végrehajtani. A tesztelési környezet lehet webböngésző, Mobil eszköz, mobil emulátor, mobil szimulátor stb. A Desired Capabilities Class segít nekünk megmondani a webdrivernek, hogy melyik környezetet fogjuk használni tesztszkriptünkben.

A setCapability metódus a DesiredCapabilities osztály, amelyet az oktatóanyag későbbi részében ismertetünk, használható Selenium Rács. Különböző gépkonfigurációk párhuzamos végrehajtására szolgál.

Pl.: rács

A kívánt képességek Selenium webdriver

A böngésző tulajdonságainak beállítására szolgál (pl. Chrome, IE), platformnév (pl. Linux, Windows), amelyeket a tesztesetek végrehajtása során használnak.

A mobilautomatizálás esetében, mivel a teszteket különböző típusú mobileszközökön végezzük, a Mobil Platform (pl. iOS, Android) Platformverzió (pl. 3.x, 4.x hüvelyk Android) állítható be.

A kívánt képességek Selenium webdriver

A fenti emulátorpélda az android platformot és az IceCream Sandwich (4.x) platformverziót mutatja.

A kívánt képességek hasznosabbak az alábbi esetekben:

  • Mobilalkalmazás-automatizálásban, ahol a böngésző tulajdonságai és az eszköz tulajdonságai állíthatók be.
  • In Selenium grid, amikor a teszteseteket egy másik böngészőben, különböző operációs rendszerekkel és verziókkal szeretnénk futtatni.

A kívánt képességek módszerei

Itt egy másik típusú kívánt képesség-módszert fogunk látni, és megnézzük, hogyan kell használni az egyik módszert.setCapability Method”.

#1) getBrowserName()

public java.lang.String getBrowserName()

#2) setBrowserName()

public void setBrowserName(java.lang.String browserName)

#3) getVersion()

public java.lang.String getVersion()

#4) setVersion()

public void setVersion(java.lang.String version)

#5) getPlatform()

public Platform getPlatform()

#6) setPlatform()

public Platform setPlatform()

#7) getCapability() Method

A DesiredCapabilities osztály getCapability() metódusa használható a rendszerben jelenleg használt képesség lekérésére.

public java.lang.Object getCapability(java.lang.String capabilityName)

#8) setCapability() Method

A setCapability() metódus a Desired Capabilities osztályból a tesztkörnyezet tulajdonságainak beállítására szolgál, mint például az eszköz neve, az operációs rendszer neve és verziója, a böngésző neve és verziója, a tesztelt alkalmazás abszolút elérési útja (a program .apk fájlja). Android alkalmazás tesztelés alatt), alkalmazástevékenység (in Android) és az appPackage (in Java).

„setCapability módszer” in Java az alábbi nyilatkozatokkal rendelkezik:

setCapability : public void setCapability(java.lang.String capabilityName,boolean value)
setCapability  :public void setCapability(java.lang.String capabilityName,java.lang.String value)
setCapability  :public void setCapability(java.lang.String capabilityName,Platform value)
setCapability  :public void setCapability(java.lang.String key,java.lang.Object value)

Állítsa be a képességet Selenium Példa

Tekintsünk egy példát, ahol a sajátunkat szeretnénk működtetni Teszt eset az Internet Explorer böngészőben a www.gmail.com webhely megnyitásához Selenium Webdriver.

Következő a kód.

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;

public class IEtestforDesiredCapabilities {
  
 public static void main(String[] args) {
  
WebDriver driver = new InternetExplorerDriver();
 driver.manage().window().maximize();
 driver.get("http://gmail.com");
  
 driver.quit();
 }
  
}

Most futtassa ezt a kódot innen Eclipse és nézd meg a konzolt.

output:

A fenti kód végrehajtásakor a következő hibát dobja ki. A hiba azért fordul elő, mert a böngésző-illesztőprogram elérési útja (a fenti esetben az IE) nincs beállítva. A böngésző nem található a szelénkód alapján.

The path to the driver executable must be set by the webdriver.ie.driver system property; formore information, see http://code.google.com/p/selenium/wiki/InternetExplorerDriver. The latest version can be downloaded from http://code.google.com/p/selenium/downloads/list

Dec 11, 201212:59:43PM org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib

WARNING: This method of starting the IE driver is deprecated and will be removed in selenium 2.26. Please download the IEDriverServer.exe from http://code.google.com/p/selenium/downloads/list and ensure that it is in your PATH.

Megoldás:

A fenti probléma megoldása a hiba figyelmeztető részében található.

  • Töltse le az Internet ExplorerDriver önálló kiszolgálót 32 vagy 64 bites verzióra.
  • Mentse az illesztőprogramot egy megfelelő helyre a rendszerben.
  • Állítsa be az illesztőprogram elérési útját a segítségével System.setProperty módszer.
  • Az IE illesztőprogram webdriver tulajdonsággal történő beállítására szolgál. Segít megtalálni az illesztőprogram futtatható fájlját, amely a rendszer helyén van tárolva. (Pl.:"C:\IEDriverLocation\IEDriver.exe")
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.ie.InternetExplorerDriver;
import org.openqa.selenium.remote.DesiredCapabilities;

public class IEtestforDesiredCapabilities {
  
 public static void main(String[] args) {

//it is used to define IE capability 
 DesiredCapabilities capabilities = DesiredCapabilities.internetExplorer();
  
capabilities.setCapability(CapabilityType.BROWSER_NAME, "IE");
capabilities.setCapability(InternetExplorerDriver.
  INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS,true);


System.setProperty("webdriver.ie.driver", "C:\\IEDriverServer.exe");
  
 //it is used to initialize the IE driver
 WebDriver driver = new InternetExplorerDriver(capabilities);
  
 driver.manage().window().maximize();

 driver.get("http://gmail.com");
  
 driver.quit();
 }
  
}

Kód magyarázata:

A fenti kódban

  • Az importálási utasítások a szelén web-illesztőprogramhoz szükséges csomagok, az Internet Explorer illesztőprogramhoz szükséges csomagok, a kívánt képességekhez szükséges csomagok importálása.
  • A setCapability bemeneti változóként veszi a különféle képességeket, amelyeket aztán a web-illesztőprogram használ az alkalmazás elindításához a kívánt környezetben.
  • A setProperty az illesztőprogram elérési útjának beállítására szolgál. A Web Driver ezután megkeresi a szükséges illesztőprogramot.
  • A Gmail webhely az Internet Explorer böngészőben nyílik meg a „get” módszerrel.

output:

A teszteset az Internet Explorer böngészőben sikeresen lefut a használatával Selenium Webdriver.

Következtetés

A Desired Capabilities osztály segít beállítani egy olyan környezetet, amely meghatározza a böngésző/környezet viselkedését, amelyen a teszt végrehajtható.

Segít abban, hogy alkalmazásunkat a kívánt környezetben indítsuk el, megvan az általunk használni kívánt képességek.