Selenium Tutorial: Automatisiertes Testen von Webanwendungen – Teil 1

Lernziele des Tutorials: Anlage von einem C# Projekt, Anbindung der Selenium DLLs in .Net Umgebung. Öffnen der Seite www.testautomatisierung.org in Firefox.

Zielgruppe: Dieses Selenium Tutorial ist für Anfänger gedacht, vorausgesetzt sind rudimentäre C# / Testautomatisierungserfahrungen.

Willkommen bei dem ersten deutschen Selenium Tutorial des Portals Testautomatisierung.org!

Selenium ist das verbreitetste Testwerkzeug für die Testautomatisierung von Web Anwendungen auf dem Markt. Das liegt wohl auch daran, dass Selenium unter der Apache Lizenz kostenlos heruntergeladen und eingesetzt werden darf. Bei der aktuellsten Version handelt es sich um Selenium 2.

Mit der Selenium 2 Version wurde der, aus Version 1 verwendete, Selenium Server (RC) abgelöst und durch den WebDriver ersetzt. Es ist möglich mit Hilfe der Selenium WebDriver API die Webelemente anzusprechen und automatisierte Testfälle aufzubauen.

1. Download der Selenium WebDriver Assemblies

Um mit Selenium Assemblies arbeiten zu können, müssen diese zuerst auf den lokalen Rechner heruntergeladen werden:

  1. Die Selenium Download Seite öffnen: http://docs.seleniumhq.org/download/
  2. Die aktuellste Selenium Version für die Sprache C# aussuchen (zum Erstellungszeitpunkt von diesem Tutorial ist die Version 2.39.0 aktuell) und auf Download klicken.selenium_download
  3. Die Zip Datei „selenium-dotnet-2.39.0.zip“ lokal speichern.

2. C# Projekt anlegen

Als nächstes wird ein C# Projekt in Visual Studio angelegt. Falls Sie über keine MSDN Lizenz verfügen, können Sie auch die kostenlose  Visual Studio Version Express verwenden.

  1. Öffnen Sie Ihre Visual Studio Applikation und wählen Sie „Datei -> Neu -> Projekt…“
  2. Wählen Sie aus den installierten Vorlagen im Bereich Visual C# die Vorlage „Konsolenanwendung“ aus
  3. Wählen Sie einen Namen für Ihr Projekt aus und tragen Sie diesen unter „Name“ ein (im Beispiel „SeleniumTestProjekt“)
  4. Wählen Sie einen Pfad für Ihr Selenium Projekt aus und tragen Sie diesen unter Ort ein (z.B. C:\Projects)
  5. Bestätigen Sie die Anlage des neuen Projektes mit OK  Selenium Tutorial C# Projekt anlegen

3. Aus dem Projekt auf Selenium Assemblies referenzieren

Um die Selenium Funktionen nutzen zu können, müssen die Assemblies in dem C# Projekt referenziert werden:

  1. Datei selenium-dotnet-2.39.0.zip entpacken und die dlls in einen neuen Projektordner im Projektmappen-Explorer hinzufügen (per Drag&Drop)  Selenium Assemblies hinzufügen
  2. Referenzen hinzufügen über Rechtsklick auf Verweise  und auswählen vom Kontext-Menü Eintrag  „Verweis hinzufügen“ Verweis hinzufügen
  3. Auf „Durchsuchen“ gehen und die Webdriver.dll Assembly im Verzeichnis auswählen (in diesem Beispiel C:\Projects\SeleniumTestProjekt\SeleniumTestProjekt\SeleniumDlls\WebDriver.dll, anschließend Hinzufügen wählen. Die Assembly Webdriver.dll reicht für den ersten Test aus.
  4. Ihre Verweise sollten jetzt einen Verweis auf „WebDriver“ enthalten selenium_referenzen

4. „Webseite öffnen“ mit C# implementieren

Um das Öffnen der Webseite durchführen zu können, müssen zuerst die Usings hinzugefügt werden:

using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

Anschließend können die Selenium Methoden angesprochen werden. Zuerst wird der WebDriver erstellt, dazu wird der FirefoxDriver Konstruktor aufgerufen, anschließend wird mit GoToURL() die Webseite aufgerufen:

IWebDriver driver = new FirefoxDriver();
driver.Navigate().GoToUrl("http://www.testautomatisierung.org");

Die Seite kann nach dem Aufruf auch z.B. über Titel überprüft werden:

if (!driver.Title.StartsWith("Testautomatisierung.org - "))
                Console.WriteLine("Fehler: Seite konnte nicht richtig geöffnet werden");

Im Tutorial Teil 2 wird gezeigt wie Elemente auf einer Webseite angesprochen und geprüft werden können.

0 Antworten

Hinterlassen Sie einen Kommentar

Wollen Sie an der Diskussion teilnehmen?
Feel free to contribute!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.