Soovitud võimalused sisse Selenium Veebidraiver

Mis on soovitud võimed?

Soovitud võimalused on klassis 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.

Miks me vajame soovitud võimeid?

Soovitud võimalused on vajalikud, sest iga Testimine stsenaarium tuleks teostada mõnes konkreetses testimiskeskkonnas. Testimiskeskkonnaks võib olla veebibrauser, mobiilne seade, mobiiliemulaator, mobiilisimulaator jne. Soovitud võimaluste klass aitab meil veebidraiverile öelda, millist keskkonda me oma testskriptis kasutama hakkame.

. setCapability meetod klassi DesiredCapabilities, mida on selgitatud õpetuse hilisemas osas, saab kasutada Selenium Võre. Seda kasutatakse erinevate masinakonfiguratsioonide paralleelkäivitamiseks.

Näiteks: võrk

Soovitud võimalused sisse Selenium Veebidraiver

Seda kasutatakse brauseri atribuutide (nt Chrome, IE), platvormi nime (nt Linux, Windows), mida kasutatakse testjuhtumite täitmisel.

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.

Soovitud võimalused sisse Selenium Veebidraiver

Ülaltoodud emulaatori näide näitab platvormikomplekti, mis on Android, ja platvormi versioonikomplekti, milleks 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 grid, kui tahame katsejuhtumeid käivitada erinevas brauseris, millel on erinevad operatsioonisüsteemid ja versioonid.

Soovitud võimete meetodite tüübid

Siin näeme erinevat tüüpi soovitud võimaluste meetodeid ja vaatame, kuidas seda meetodit kasutada.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() 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

. setCapability() meetod Soovitud võimaluste klassist kasutatakse testkeskkonna atribuutide määramiseks, nagu seadme nimi, OS-i nimi ja versioon, brauseri nimi ja versioon, testitava rakenduse absoluutne tee (apk-fail Android rakendus testimisel), rakenduse tegevus (in Android) ja appPackage (in Java).

"setCapability meetod" in 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 me tahame oma tegevust juhtida Testjuhtum brauseris Internet Explorer, et avada veebisait www.gmail.com 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õrketeade. Viga ilmneb seetõttu, et brauseri draiveri (ülaltoodud juhul IE) tee pole määratud. Brauserit ei leitud seleenikoodi järgi.

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 juhi tee, kasutades nuppu System.setProperty meetod.
  • Seda kasutatakse veebidraiveri atribuudiga IE draiveri seadistamiseks. See aitab leida draiveri käivitatava faili, mis on süsteemi asukohta salvestatud. (Nt: "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();
 }
  
}

Koodi selgitus:

Ülaltoodud koodis

  • Impordiavaldused on vajalike pakettide importimine seleeni veebidraiveri jaoks, vajalikud paketid Internet Exploreri draiveri jaoks, paketid soovitud võimaluste jaoks.
  • setCapability kasutab erinevaid võimalusi sisendmuutujatena, mida seejärel kasutab veebidraiver rakenduse käivitamiseks soovitud keskkonnas.
  • setProperty kasutatakse draiveri asukoha määramiseks. Seejärel otsib veebidraiver vajaliku draiveri.
  • Gmaili veebisait avatakse Internet Exploreri brauseris "hangi" meetodil.

Väljund:

Testjuhtum Internet Exploreri brauseris töötab edukalt kasutades Selenium Veebidraiver.

Järeldus

Soovitud võimaluste klass aitab seadistada keskkonda, mis määratleb selle brauseri/keskkonna käitumise, milles saab testi sooritada.

See aitab käivitada meie rakenduse soovitud keskkonnas, millel on võimalused, mida soovime kasutada.