Norimos galimybės
Norimos galimybės yra „Selenium“ klasė, naudojama naršyklių savybėms nustatyti, kad būtų atliekami kryžminiai žiniatinklio programų bandymai. Jis saugo galimybes kaip raktų ir verčių poras, ir šios funkcijos naudojamos nustatyti naršyklės ypatybes, pvz., Naršyklės pavadinimą, naršyklės versiją, naršyklės tvarkyklės kelią sistemoje ir kt.
- Norima galimybė taip pat gali būti naudojama konfigūruoti „Selenium WebDriver“ tvarkyklės egzempliorių.
- Mes galime sukonfigūruoti tvarkyklės egzempliorių, pvz., „FirefoxDriver“, „ChromeDriver“, „InternetExplorerDriver“, naudodamiesi norimomis galimybėmis.
Šioje pamokoje sužinosite
- Kas yra norimas pajėgumas?
- Kodėl mums reikia norimų galimybių?
- Įvairių tipų pageidaujamų galimybių metodai
- Nustatyto pajėgumo metodo pavyzdys
Kodėl mums reikia norimų galimybių?
Norimos galimybės reikalingos, nes kiekvienas testavimo scenarijus turėtų būti vykdomas tam tikroje testavimo aplinkoje. Testavimo aplinka gali būti interneto naršyklė, mobilusis įrenginys, mobilusis emuliatorius, mobilusis simuliatorius ir kt. Norimų galimybių klasė padeda mums žinoti žiniatinklio tvarkyklę, kokią aplinką naudosime savo testo scenarijuje.
„ DesiredCapability“ klasės „ setCapability“ metodas , kuris paaiškinamas vėlesnėje mokymo programos dalyje, gali būti naudojamas „Selenium Grid“. Jis naudojamas lygiagrečiai vykdyti skirtingas mašinų konfigūracijas.
Pvz .: tinklelis
Jis naudojamas nustatyti naršyklės ypatybes (pvz., „Chrome“, IE), platformos pavadinimą (pvz., „Linux“, „Windows“), kurios naudojamos vykdant bandomuosius atvejus.
Mobiliosios automatikos atveju, atliekant skirtingų mobiliųjų įrenginių atmainas, galima nustatyti „Mobile Platform“ (pvz., „IOS“, „Android“) platformos versiją (pvz., „Android“ 3.x, 4.x).
Aukščiau pateiktame emuliatoriaus pavyzdyje rodomas platformos rinkinys, kuris yra „Android“, ir platformos versijų rinkinys, kuris yra „IceCream Sandwich“ (4.x).
Norimos galimybės yra naudingesnės tokiais atvejais:
- Mobiliųjų programų automatikoje, kur galima nustatyti naršyklės ypatybes ir įrenginio ypatybes.
- „Selenium“ tinklelyje, kai norime paleisti bandymo atvejus kitoje naršyklėje su skirtingomis operacinėmis sistemomis ir versijomis.
Įvairių tipų pageidaujamų galimybių metodai
Čia pamatysime kitokį norimų galimybių metodų tipą ir pamatysime, kaip naudoti vieną iš šio metodo „ setCapability Method“.
- getBrowserName ()
viešas java.lang.String getBrowserName ()
- setBrowserName ()
public void setBrowserName (java.lang.String browserName)
- „getVersion“ ()
viešas java.lang.String getVersion ()
- setVersion ()
public void setVersion (java.lang. String versija)
- „getPlatform“ ()
viešoji platforma „getPlatform“ ()
- setPlatform ()
viešoji platforma setPlatform ()
- „getCapability“ metodas
„DesiredCapability“ klasės „getCapability“ metodą galima naudoti norint gauti šiuo metu sistemoje naudojamą pajėgumą.
viešas java.lang.objektas getCapability (java.lang.String capabilityName)
- setCapability () metodas
SetCapability () metodas norimo pajėgumų klasėje yra naudojamas nustatyti bandymo aplinkoje, pavyzdžiui, įrenginio pavadinimas, OS pavadinimas ir versija, naršyklės pavadinimas ir versija, absoliutų kelią app pagal bandymo (su .apk failą Android app turtą bandoma), „App Activity“ („Android“) ir „appPackage“ („Java“).
„ Java “ setCapability metodas turi šias deklaracijas:
setCapability: public void setCapability (java.lang.String capabilityName, loginė vertė)
setCapability: public void setCapability (java.lang.String capabilityName, java.lang.String reikšmė)
setCapability: public void setCapability (java.lang.String capabilityName, platformos vertė)
setCapability: public void setCapability (java.lang.String raktas, java.lang.Object reikšmė)
Nustatyto pajėgumo metodo pavyzdys
Panagrinėkime pavyzdį, kai norime paleisti „Test Case“ naršyklėje „Internet Explorer“, kad atidarytume www.gmail.com svetainę naudodami „Selenium Webdriver“.
Toliau pateikiamas kodas.
importuoti org.openqa.selenium.WebDriver;importuoti org.openqa.selenium.ie.InternetExplorerDriver;public class IEtestforDesiredCapability {public static void main (String [] argumentuoja) {„WebDriver“ tvarkyklė = nauja „InternetExplorerDriver“ ();vairuotojas.tvarkyti (). langas (). padidinti ();driver.get ("http://gmail.com");vairuotojas.mesti ();}}
Dabar paleiskite šį kodą iš „Eclipse“ ir patikrinkite konsolę.
Išvestis:
Kai bus įvykdytas aukščiau pateiktas kodas, ji sukels šią klaidą. Klaida įvyksta, nes kelias į naršyklės tvarkyklę (pirmiau nurodytu atveju IE) nenustatytas. Naršyklės nepavyko rasti pagal seleno kodą.
Tvarkyklės vykdomojo failo kelią turi nustatyti „webdriver.ie.driver“ sistemos ypatybė; informacijos apie tai žr. http://code.google.com/p/selenium/wiki/InternetExplorerDriver. Naujausią versiją galite atsisiųsti iš http://code.google.com/p/selenium/downloads/list
2012 m. Gruodžio 11 d. 12: 59: 43 PM org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib
ĮSPĖJIMAS: Šis IE tvarkyklės paleidimo būdas nebenaudojamas ir bus pašalintas iš seleno 2.26. Atsisiųskite IEDriverServer.exe iš http://code.google.com/p/selenium/downloads/list ir įsitikinkite, kad jis yra jūsų PATH.
Sprendimas :
Minėtos problemos sprendimas pateiktas pačios klaidos įspėjamojoje dalyje.
- Atsisiųskite atskirą „Internet ExplorerDriver“ serverį, skirtą 32 arba 64 bitų.
- Išsaugokite tvarkyklę tinkamoje sistemos vietoje.
- Nustatykite tvarkyklės kelią naudodami metodą System.setProperty .
- Jis naudojamas nustatyti IE tvarkyklę su žiniatinklio tvarkyklės ypatybe. Tai padeda rasti tvarkyklės vykdomąjį failą, kuris yra saugomas sistemos vietoje. (Pvz .: "C: \ IEDriverLocation \ IEDriver.exe")
importuoti org.openqa.selenium.WebDriver;importuoti org.openqa.selenium.ie.InternetExplorerDriver;importuoti org.openqa.selenium.remote.DesiredCapabilities;public class IEtestforDesiredCapability {public static void main (String [] argumentuoja) {// jis naudojamas apibrėžiant IE galimybes„DesiredCapilities“ galimybės = „DesiredCapilities.internetExplorer“);pajėgumai.setCapability („CapabilityType.BROWSER_NAME“, „IE“);capacity.setCapability („InternetExplorerDriver“.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, tiesa);System.setProperty ("webdriver.ie.driver", "C: \\ IEDriverServer.exe");// jis naudojamas inicijuojant IE tvarkyklę„WebDriver“ tvarkyklė = nauja „InternetExplorerDriver“ (galimybės);vairuotojas.tvarkyti (). langas (). padidinti ();driver.get ("http://gmail.com");vairuotojas.mesti ();}}
Kodo paaiškinimas:
Viršuje esančiame kode
- Importavimo ataskaitos yra importuoti reikiamus seleno žiniatinklio tvarkyklės paketus, reikalingus „Internet Explorer“ tvarkyklės paketus, norimų galimybių paketus.
- „setCapability“ naudoja įvairias galimybes kaip įvesties kintamuosius, kuriuos tada žiniatinklio tvarkyklė naudoja paleisti programą norimoje aplinkoje.
- „setProperty“ naudojamas nustatyti kelią, kuriame yra tvarkyklė. Tada žiniatinklio tvarkyklė suranda reikiamą tvarkyklę.
- „Gmail“ svetainė atidaroma naršyklėje „Internet Explorer“ naudojant „get“ metodą.
Išvestis:
„Internet Explorer“ naršyklės bandomasis atvejis bus sėkmingai paleistas naudojant „Selenium Webdriver“.
Išvada
„Norimų galimybių“ klasė padės nustatyti aplinką, apibrėžiančią naršyklės / aplinkos, kurioje galima atlikti testą, elgesį.
Tai padeda paleisti programą norimoje aplinkoje, turint galimybes, kurias norime naudoti.
Prie šio straipsnio prisidėjo Krithika Ramkumar