Ønskede muligheder i Selen WebDriver

Indholdsfortegnelse:

Anonim

Ønskede muligheder

Ønskede kapaciteter er en klasse i Selen, der bruges til at indstille browsers egenskaber til at udføre test på tværs af browsere af webapplikationer. Den gemmer funktionerne som nøgleværdipar, og disse funktioner bruges til at indstille browseregenskaber som browsernavn, browserversion, sti til browserdriveren i systemet osv. Til at bestemme browserens opførsel på kørselstidspunktet.

  • Ønsket kapacitet kan også bruges til at konfigurere driverforekomsten af ​​Selenium WebDriver.
  • Vi kan konfigurere driverinstans som FirefoxDriver, ChromeDriver, InternetExplorerDriver ved hjælp af de ønskede funktioner.

I denne vejledning lærer du-

  • Hvad er ønsket kapacitet?
  • Hvorfor har vi brug for ønsket kapacitet?
  • Forskellige typer af ønsket kapacitetsmetoder
  • Eksempel på sæt-kapacitetsmetode

Hvorfor har vi brug for ønsket kapacitet?

Ønskede kapaciteter er nødvendige, fordi hvert testscenarie skal udføres på et bestemt testmiljø. Testmiljøet kan være en webbrowser, mobil enhed, mobil emulator, mobil simulator osv. Den ønskede kapacitetsklasse hjælper os med at fortælle webdriveren, hvilket miljø vi skal bruge i vores test script.

Den setCapability Fremgangsmåde af DesiredCapabilities klasse, hvilket forklares i den senere del af den lærer, kan anvendes i Selenium Grid. Det bruges til at udføre en parallel udførelse på forskellige maskinkonfigurationer.

Eks: Gitter

Det bruges til at indstille browseregenskaberne (f.eks. Chrome, IE), platformnavn (f.eks. Linux, Windows), der bruges under udførelsen af ​​testsagerne.

I tilfælde af mobil automatisering, når vi udfører testene på forskellige varianter af mobile enheder, kan den mobile platform (f.eks. IOS, Android) platformversion (f.eks. 3.x, 4.x i Android) indstilles.

Ovenstående emulatoreksempel viser platformssættet, som er android, og platformversionssættet, der er IceCream Sandwich (4.x).

Ønskede muligheder er mere nyttige i tilfælde som:

  • I automatisering af mobilapplikationer, hvor browseregenskaberne og enhedens egenskaber kan indstilles.
  • I Selen-gitter, når vi vil køre testcases på en anden browser med forskellige operativsystemer og versioner.

Forskellige typer af ønsket kapacitetsmetoder

Her vil vi se en anden type ønskede kapacitetsmetoder og se, hvordan man bruger en af ​​denne metode " setCapability Method".

  1. getBrowsernavn ()
offentlig java.lang.String getBrowserName ()
  1. setBrowsernavn ()
public void setBrowserName (java.lang.String browserName)
  1. getVersion ()
offentlig java.lang.String getVersion ()
  1. setVersion ()
public void setVersion (java.lang.String version)
  1. getPlatform ()
offentlig platform getPlatform ()
  1. setPlatform ()
offentlig platform setPlatform ()
  1. getCapability Method

GetCapability-metoden i DesiredCapabilities-klassen kan bruges til at få den kapacitet, der i øjeblikket er i brug i systemet.

offentlig java.lang.Object getCapability (java.lang.String capabilityName)
  1. setCapability () Metode

Den setCapability () metode af de ønskede funktioner klasse bruges til at indstille egenskab ved et testmiljø lignende enhed navn, OS navn og version, browser navn og version, absolutte sti af app under test (APK filen i Android-app under test), appaktivitet (i Android) og appPackage (i Java).

"setCapability-metode" i Java har nedenstående erklæringer:

setCapability: public void setCapability (java.lang.String capabilityName, boolsk værdi)
setCapability: public void setCapability (java.lang.String capabilityName, java.lang.String værdi)
setCapability: public void setCapability (java.lang.String capabilityName, Platform værdi)
setCapability: public void setCapability (java.lang.String key, java.lang.Object value)

Eksempel på sæt-kapacitetsmetode

Lad os overveje et eksempel, hvor vi vil køre vores Test Case i Internet explorer-browseren for at åbne www.gmail.com-webstedet ved hjælp af Selenium Webdriver.

Følgende er koden.

import org.openqa.selenium.WebDriver;import org.openqa.selenium.ie.InternetExplorerDriver;offentlig klasse IEtestforDesiredCapabilities {public static void main (String [] args) {WebDriver-driver = ny InternetExplorerDriver ();driver.manage (). vindue (). maksimere ();driver.get ("http://gmail.com");driver.quit ();}}

Kør nu denne kode fra Eclipse og tjek konsollen.

Produktion:

Det kaster følgende fejl, når ovenstående kode udføres. Fejlen opstår, fordi stien til browserdriveren (IE i ovenstående tilfælde) ikke er indstillet. Browseren kunne ikke findes ved hjælp af selenkoden.

Stien til den eksekverbare driver skal indstilles af systemegenskaben webdriver.ie.driver; tidligere oplysninger, se http://code.google.com/p/selenium/wiki/InternetExplorerDriver. Den seneste version kan downloades fra http://code.google.com/p/selenium/downloads/list

11. december 201212: 59: 43 org.openqa.selenium.ie.InternetExplorerDriverServer initializeLib

ADVARSEL: Denne metode til start af IE-driveren er udfaset og fjernes i selen 2.26. Download IEDriverServer.exe fra http://code.google.com/p/selenium/downloads/list og sørg for, at den er i din PATH.

Løsning :

Løsningen til ovenstående problem findes i advarselsafsnittet i selve fejlen.

  • Download Internet ExplorerDriver standalone server til 32bit eller 64bit.
  • Gem føreren et passende sted i systemet.
  • Indstil stien til driveren ved hjælp af System.setProperty- metoden.
  • Det bruges til at indstille IE-driveren til webdriver-egenskaben. Det hjælper med at finde den driverkørbare fil, der er gemt på systemplaceringen. (Eks: "C: \ IEDriverLocation \ IEDriver.exe")
import org.openqa.selenium.WebDriver;import org.openqa.selenium.ie.InternetExplorerDriver;import org.openqa.selenium.remote.DesiredCapabilities;offentlig klasse IEtestforDesiredCapabilities {public static void main (String [] args) {// det bruges til at definere IE-kapacitetDesiredCapabilities-muligheder = DesiredCapabilities.internetExplorer ();skills.setCapability (CapabilityType.BROWSER_NAME, "IE");capabilities.setCapability (InternetExplorerDriver.INTRODUCE_FLAKINESS_BY_IGNORING_SECURITY_DOMAINS, sand);System.setProperty ("webdriver.ie.driver", "C: \\ IEDriverServer.exe");// det bruges til at initialisere IE-driverenWebDriver-driver = ny InternetExplorerDriver (kapaciteter);driver.manage (). vindue (). maksimere ();driver.get ("http://gmail.com");driver.quit ();}}

Kode Forklaring:

I koden ovenfor,

  • Importopgørelserne er at importere de krævede pakker til selen-webdriveren, nødvendige pakker til Internet Explorer-driveren, pakker til de ønskede muligheder.
  • setCapability tager de forskellige funktioner som inputvariabler, som derefter bruges af webdriveren til at starte applikationen i det ønskede miljø.
  • setProperty bruges til at indstille stien, hvor føreren er placeret. Webdriver finder derefter den nødvendige driver.
  • Gmail-webstedet åbnes i Internet Explorer-browseren ved hjælp af "get" -metoden.

Produktion:

Test case på Internet explorer browser kører med succes ved hjælp af Selenium Webdriver.

Konklusion

Klassen Ønskede muligheder hjælper med at indstille et miljø til at definere den browser / det miljø, som testen kan udføres på.

Det hjælper med at starte vores applikation i det ønskede miljø med de muligheder, vi ønsker at bruge.

Denne artikel er bidraget af Krithika Ramkumar