Požadované schopnosti v Selenium webový ovladač

Co jsou požadované schopnosti?

Požadované schopnosti je třída v Selenium slouží k nastavení vlastností prohlížečů pro provádění testování webových aplikací napříč prohlížeči. Ukládá schopnosti jako páry klíč-hodnota a tyto schopnosti se používají k nastavení vlastností prohlížeče, jako je název prohlížeče, verze prohlížeče, cesta ovladače prohlížeče v systému atd., aby se určilo chování prohlížeče za běhu.

  • Požadovanou schopnost lze také použít ke konfiguraci instance ovladače Selenium WebDriver.
  • Můžeme nakonfigurovat instanci ovladače jako FirefoxDriver, ChromeDriver, InternetExplorerDriver pomocí požadovaných funkcí.

Proč potřebujeme požadované schopnosti?

Požadované schopnosti jsou potřeba, protože každý Testování scénář by měl být proveden v nějakém specifickém testovacím prostředí. Testovacím prostředím může být webový prohlížeč, Mobilní aplikace zařízení, mobilní emulátor, mobilní simulátor atd. Třída Desired Capabilities Class nám pomáhá sdělit webovému ovladači, jaké prostředí použijeme v našem testovacím skriptu.

Jedno metoda setCapability třídy DesiredCapabilities, která je vysvětlena v pozdější části tutoriálu, lze použít v Selenium Mřížka. Používá se k provádění paralelního provádění na různých konfiguracích stroje.

Příklad: Mřížka

Požadované schopnosti v Selenium webový ovladač

Slouží k nastavení vlastností prohlížeče (např. Chrome, IE), názvu platformy (např. Linux, Windows), které se používají při provádění testovacích případů.

V případě mobilní automatizace, protože testy provádíme na různých typech mobilních zařízení, mobilní platforma (např. iOS, Android) Verze platformy (např. 3.x, 4.x in Android) lze nastavit.

Požadované schopnosti v Selenium webový ovladač

Výše uvedený příklad emulátoru ukazuje sadu platformy, kterou je Android, a sadu verzí platformy, kterou je IceCream Sandwich (4.x).

Požadované schopnosti jsou užitečnější v případech, jako jsou:

  • V automatizaci mobilních aplikací, kde lze nastavit vlastnosti prohlížeče a vlastnosti zařízení.
  • In Selenium grid, když chceme spustit testovací případy v jiném prohlížeči s různými operačními systémy a verzemi.

Typy metod požadovaných schopností

Zde uvidíme jiný typ požadovaných metod schopností a uvidíme, jak použít jednu z těchto metod “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) metoda getCapability().

Metodu getCapability() třídy DesiredCapabilities lze použít k získání schopnosti, která se aktuálně v systému používá.

public java.lang.Object getCapability(java.lang.String capabilityName)

#8) Metoda setCapability().

Jedno metodu setCapability(). třídy Desired Capabilities se používá k nastavení vlastnosti testovacího prostředí, jako je název zařízení, název a verze operačního systému, název a verze prohlížeče, absolutní cesta k testované aplikaci (soubor .apk Android testovaná aplikace), Aktivita aplikace (v Android) a appPackage (in Java).

"Metoda setCapability" in Java má níže uvedená prohlášení:

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)

Nastavte schopnost Selenium Příklad

Podívejme se na příklad, kde chceme provozovat naše Testovací případ v prohlížeči Internet explorer otevřete webovou stránku www.gmail.com pomocí Selenium Webdriver.

Následuje 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();
 }
  
}

Nyní spusťte tento kód z Eclipse a podívejte se na konzoli.

Výstup:

Při spuštění výše uvedeného kódu vyvolá následující chybu. K chybě dochází, protože cesta k ovladači prohlížeče (ve výše uvedeném případě IE) není nastavena. Prohlížeč nelze najít pomocí kódu selenu.

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.

Řešení:

Řešení výše uvedeného problému je uvedeno v části varování samotné chyby.

  • Stáhněte si samostatný server Internet ExplorerDriver pro 32bitovou nebo 64bitovou verzi.
  • Uložte ovladač na vhodné místo v systému.
  • Nastavte cestu pro ovladač pomocí System.setProperty metoda.
  • Slouží k nastavení ovladače IE s vlastností webdriver. Pomáhá najít spustitelný soubor ovladače, který je uložen v systémovém umístění. (Příklad: “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();
 }
  
}

Vysvětlení kódu:

Ve výše uvedeném kódu

  • Příkazy importu slouží k importu požadovaných balíčků pro webový ovladač selenium, požadovaných balíčků pro ovladač Internet Explorer, balíčků pro požadované schopnosti.
  • setCapability přebírá různé schopnosti jako vstupní proměnné, které pak webový ovladač používá ke spuštění aplikace v požadovaném prostředí.
  • setProperty se používá k nastavení cesty, kde se nachází ovladač. Web Driver poté vyhledá požadovaný ovladač.
  • Web Gmail se otevírá v prohlížeči Internet Explorer pomocí metody „get“.

Výstup:

Testovací případ prohlížeče Internet Explorer bude úspěšně spuštěn pomocí Selenium Webdriver.

Proč investovat do čističky vzduchu?

Třída Desired Capabilities pomůže nastavit prostředí pro definování chování prohlížeče/prostředí, ve kterém lze test provést.

Pomáhá spustit naši aplikaci v požadovaném prostředí s možnostmi, které chceme používat.