Selenium – Testautomatisierung

Selenium ist ein Framework, welches automatischen Softwaretest bei Webanwendungen, anbietet. Diese freie Software wurde unter der Apache 2-0-Lizenz veröffentlicht. Mit Selenium ist das automatische testen bei Webanwendungen. Welche viel Tipparbeit abnehmen bei manuellen Testern abnimmt.

Selenium DIE

Diese Webanwendung  ist für einen schnellen einfachen Einstieg geeignet. Als Firefox Addon kann man sich die Software problemlos (abhängig von Ihrer Firefox Version) installieren. Mit dieser Anwendung ist es möglich Szenarien aufzunehmen und diese in einem Testfall innerhalb der Anwendung  abzuspielen.  Die Testfällle können mittes „verify“ und „assert“ angereichert werden, so dass erfolgreiche und nicht erfolgreiche Testfälle dokumentiert werden.  Einzelne Testfälle lassen sich auch in Testsuite hinzufügen. Diese Bequemlichkeit wird allerdings nur dem Browser Mozilla Firefox zur Verfügung gestellt. So einfach auch das automatische Testen hiermit gemacht wird, ist ein browserunabhängiger Test nicht möglich. Besonders bei großen Projekten hat Selenium IDE schwer wartbar zu sein. Kleinere Änderung an der  Software können zum Nicht-Funktionieren von des aufgenommenen Testfalls führen.

Anschließend gab es e Selenium Remote Control (RC), wobei der Selenium Server von einem Client in verschiedenen Programmiersprachen ferngesteuert wurde. In jedem JavaScript unterstützten Browser hat die Anwendung funktoineirt. Doch ist jeder Browser indiviuell fernzusteuern. Allerdings wurde diese Software mit dem Release von Selenium WebDriver kaum gebraucht.  Bei funkrioneirt der Webdriver als eine Schnitstelle zu den Browsern. Programme werden mit den Webdriver Methoden geschribene. Diese können mit einem Code  ein Testfall oder Testsuite verschiednene Browser getestet werden.

Somit muss nur für den WebDriver Interface programmiert werden

1 x Methode für einen Browserà Firefox Driver, IE Driver, Chrome Driver, Others…

WebDriver ist ein Interface / SST das version 2.0 von Selenium ist.

Jeder Browser hat seine eigene Klasse um die Mehoden von Webdriver zu nutzen. Je Browser muss der Driver heruntergeladen und im Code darauf hingewiesen werden. Damit der Driver auch die korrekte Anwendung ausführt.

  • FirefoxDriver
  • ChromeDriver
  • InternetExplorer Driver
  • Safari Driver
  • EventfiringWebDriver

// instanziieren eines Webdrivers

 

Was sagen die anderen zu der Idee?