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 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 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.