Soovitud võimalused sisse Selenium Veebidraiver
⚡ Nutikas kokkuvõte
Soovitud võimed on Selenium klass, mis salvestab brauseri, platvormi ja seadme seaded võtme-väärtuspaaridena, võimaldades ühel testikomplektil sihtida paljusid keskkondi Selenium Võrk, pilvevõrgud ja mobiilne automatiseerimine.
Mis on soovitud võimed?
Soovitud võimed on klass Selenium kasutatakse brauserite atribuutide määramiseks veebirakenduste brauseriüleseks testimiseks. See salvestab võimalused võtme-väärtuste paaridena ja neid võimalusi kasutatakse brauseri atribuutide (nt brauseri nimi, brauseri versioon, brauseri draiveri tee süsteemis jne) määramiseks, et määrata brauseri käitumine käitusajal.
- Soovitud võimalust saab kasutada ka draiveri eksemplari konfigureerimiseks Selenium Veebidraiver.
- Saame konfigureerida draiveri eksemplari nagu FirefoxDraiver, ChromeDriver, InternetExplorerDriver, kasutades soovitud võimalusi.
Versiooni märkus: Selenium 4 asendab DesiredCapabilities klassid brauseri valikute klassidega — ChromeOptions, FirefoxValikud, EdgeOptions, InternetExplorerOptions. Allolevad näited säilitavad algse süntaksi.
Miks me vajame soovitud võimeid?
Soovitud võimed on vajalikud, sest iga Testimine stsenaarium tuleks teostada mõnes konkreetses testimiskeskkonnas. Testimiskeskkonnaks võib olla veebibrauser, mobiilne seade, mobiiliemulaator, mobiilisimulaator jne. Soovitud võimete klass aitab meil WebDriverile öelda, millist keskkonda me oma testiskriptis kasutama hakkame.
Selle lehe hilisemas osas selgitatud DesiredCapabilities klassi setCapability meetodit saab kasutada järgmistes valdkondades: Selenium Ruudustik. Seda kasutatakse a teostamiseks paralleelne täitmine erinevatel masinakonfiguratsioonidel.
Näiteks: Ruudustik (näidatud allpool).
Seda kasutatakse brauseri atribuutide (nt Chrome, IE), platvormi nime (nt Linux, Windows), mida kasutatakse täitmise ajal Testjuhtum.
Mobiilse automatiseerimise puhul, kuna teostame teste erinevat tüüpi mobiilseadmetega, on mobiilne platvorm (nt iOS, Android) Platvormi versioon (nt 3.x, 4.x tolli Android) saab määrata.
Allolev emulaatori näide näitab platvormikomplekti, mis on Android, ja platvormiversioonikomplekti, mis on IceCream Sandwich (4.x).
Soovitud võimalused on kasulikumad järgmistel juhtudel:
- Mobiilirakenduste automatiseerimises, kus saab määrata brauseri atribuute ja seadme atribuute.
- In Selenium Ruudustik, kui soovime testijuhtumeid käivitada erinevas brauseris, millel on erinevad operatsioonisüsteemid ja versioonid.
Soovitud võimete meetodite tüübid
Siin näeme erinevaid Desired Capabilities meetodeid ja seda, kuidas ühte neist, meetodit setCapability(), kasutada.
#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() meetod
DesiredCapabilities klassi meetodit getCapability() saab kasutada süsteemis praegu kasutusel oleva võime hankimiseks.
public java.lang.Object getCapability(java.lang.String capabilityName)
#8) setCapability() meetod
Desired Capabilities klassi meetodit setCapability() kasutatakse testimiskeskkonna omaduste, näiteks seadme nime, operatsioonisüsteemi nime ja versiooni, brauseri nime ja versiooni ning testitava rakenduse absoluutse tee (rakenduse .apk-fail) määramiseks. Android rakendus testimisel), rakenduse tegevus (in Android) ja rakenduste pakett (sisse Java).
„setCapability meetod” Java on järgmised deklaratsioonid:
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)
Seadistage võimekus Selenium Näide
Vaatleme näidet, kus tahame käivitada oma testversiooni Internet Exploreri brauseris, et avada veebisait www.gmail.com, kasutades Selenium Veebidraiver.
Järgmine on kood.
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(); } }
Nüüd käivitage see kood aadressilt Eclipse ja vaadake konsooli.
Väljund:
Ülaltoodud koodi käivitamisel kuvatakse järgmine tõrge. Tõrge ilmneb seetõttu, et brauseri draiveri (ülaltoodud juhul IE) tee pole määratud. Brauserit ei leitud. Selenium kood.
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.
Lahendus:
Ülaltoodud probleemi lahendus on toodud vea enda hoiatusosas.
- Laadige alla 32- või 64-bitine Internet ExplorerDriveri eraldiseisev server.
- Salvestage draiver süsteemis sobivasse kohta.
- Määrake draiveri tee meetodi System.setProperty abil. Seda kasutatakse IE draiveri määramiseks atribuudi webdriver abil. See aitab leida draiveri käivitatava faili, mis on salvestatud süsteemi asukohta. (Näiteks: „C:\IEDriverLocation\IEDriver.exe”)
Versiooni märkus: Selenium 4.6 ja uuemad versioonid lahendavad draiveri automaatselt läbi Selenium Manager, seega on System.setProperty valikuline. Allolev ajalooline kood on muutmata.
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(); } }
Code Selgitus:
Ülaltoodud koodis
- Impordilaused impordivad vajalikud paketid Selenium WebDriver, Internet Exploreri draiveri jaoks vajalikud paketid ja soovitud funktsioonide paketid.
- setCapability kasutab erinevaid võimalusi sisendmuutujatena, mida seejärel kasutab veebidraiver rakenduse käivitamiseks soovitud keskkonnas.
- „setProperty“ abil määratakse draiveri asukoht. Seejärel leiab WebDriver vajaliku draiveri.
- Gmail Veebisait avatakse Internet Exploreris meetodi „get” abil.
Väljund:
Internet Exploreri brauseris töötab test edukalt, kasutades Selenium Veebidraiver.


