Webdriver

Web-Treiber

Verwenden Sie dies als Ausgangspunkt, um ein gewünschtes Fähigkeitsobjekt zu erstellen, um Remote-Web-Treiber für die Verbindung zu einem Selen-Server oder Selen-Grid anzufordern. Die WebDriverConnection SUT API stellt Klassen und Schnittstellen für die Verwendung der Selenium WebDriver Java API innerhalb eines'SUT-Skripts' zur Verfügung. Lernen Sie die Grundlagen der Testautomatisierung mit dem Selenium WebDriver durch unsere erfahrenen Referenten und praxisorientierte Übungen. Der Selenium WebDriver Der einfache Weg mit Java! Lösen Sie Ihre Selenium WebDriver Probleme mit dieser Kurzanleitung zum automatischen Testen von Webanwendungen mit Selenium WebDriver in C#.

Automatisches Prüfen von Websites mit dem WebDriver von SALENIUM

Der Startschuss für das Open-Source-Projekt "Selenium" zur Durchführung von automatisierten Browser-Tests fiel 2004 durch Jason Huggins während seiner Zeit bei ThinkWorks, der damals vor allem mit Java-Script arbeitete. Der Internet Explorer war zwar der dominierende Webbrowser, aber es wurden bereits einige andere Browserversionen (insbesondere Mozilla-Varianten) verwendet.

Die Open -Source-Testwerkzeuge waren nur für individuelle Webbrowser (typischerweise für Internet Explorer) oder für die Simulation von Webbrowsern (z.B. HttpUnit) verfügbar und die Preise für die kommerziellen Werkzeuge waren, insbesondere für kleine Vorhaben, noch nicht erschwinglich. Zum Glück unterstützen alle zu prüfenden Browsers Java-Script. In Anlehnung an das FIT-Projekt wurde dem Java-Skript eine tabellarische Schreibweise hinzugefügt, die es Benutzern mit eingeschränkten Programmierfähigkeiten erlaubt, Prüfungen zu erstellen.

Es wurde 2004 unter dem Titel "Selenium" (oder "Selenium Core") und unter einer Lizenzvereinbarung für die Nutzung von Adobe Acrobat Reader 2 freigegeben. Weil es in reinem Java-Script programmiert ist, musste es auf dem selben Rechner wie die Anwendung ausgeführt werden, um die Sicherheitsvorschriften des Browsers zu umgehen. 2. Viele Restriktionen der "gleichen Host-Richtlinie" des Browsers konnten vermieden werden.

Man nannte diese Variante "Selenese" oder auch "Selenium-Fernbedienung" (Selenium RC). In der Zwischenzeit arbeitete ThinkWorks an einer weiteren Browser-Automatisierung: dem WebDriver. Der WebDriver wurde aus dieser Notwendigkeit heraus entwickelt und war eigentlich für den Einsatz in Verbindung mit dem Programm WebDriver vorbestimmt. Dabei gab es deutliche Abweichungen zwischen den beiden Systemen WebDriver und Selenium-CR. Größter Vorteil war, dass der WebDriver eine wörterbuchbasierte API hatte, die alle Klassenmethoden verwendete, während der WebDriver eine eher objektorientierte API hatte.

Darüber hinaus unterstützt WebDriver zunächst nur Java, während die Software für viele verschiedene Sprachversionen verfügbar ist. Eigentlich war es vor allem eine Javascript-Anwendung, die im Sicherheitssandkasten des Webbrowsers abläuft. Der WebDriver hat versucht, sich in den Webbrowser zu integrieren und das Browsersicherheitsmodell zu umgehen, was zu einem wesentlich größeren Aufwand bei der Entwicklung führte.

Beide Vorhaben wurden im Juli 2009 zusammengeführt und der WebDriver ist das Ergebnis beider Vorgängerprojekte. Es werden Sprachverbindungen für Java, C#, Phyton und Ruby unterstüzt. Darüber hinaus werden Chrome, Internet Explorer, Internet Explorer, Opera als auch die Browsers für den Androiden und das Apple iPhone  unterstützt. Nebenbei gibt es Seitenprojekte, die Verbindungen für Perl und eine Implementation für den BlackBerry-Browser bereitstellen.

Das WebDriver API ist nicht an ein besonderes Test-Framework angebunden und kann sowohl in Unit-Tests als auch in der bewährten Main-Methode eingesetzt werden. Am einfachsten lässt sich die Software über die Integration von Melodyne 2.0 mit Hilfe von Microsoft Dynamics in Microsoft Dynamics Server einbinden. Die Javabindings (die Javabindings von Melodyne 2.0) und alle Abhaengigkeiten.

Bitte stellen Sie sicher, dass die neueste Seleniumversion benutzt wird! Andernfalls stimmt er nicht mit dem WebDriver überein. Installation von Treibern für Browser: Der Standardbrowser für das Programm ist für Selbstbedienung. Dies bedeutet, dass nichts eingebaut werden muss und die Versuche umgehend anlaufen. Dies hat den großen Vorteil, daß die Prüfungen für jeden einzelnen Webbrowser individuell durchführbar sind.

In diesem Beispiel werden die Prüfungen als Komponententests erstellt. Damit wird ein Package für verwandte Testfälle unter dem Namen Src/Test / Java erstellt. Hier kann später auch eine neue Version der Software erstellt werden, mit der alle Testfälle des Pakets abspielbar sind. Abhängig davon, welcher Webbrowser zum Test verwendet werden soll, wird hier der zugehörige Grafiktreiber generiert.

System.setProperty("webdriver.chrome. driver", "/Anwendungen/Chromedriver"); Treiber = neuer ChromeDriver(); Für den Internet Explorer auch: System.setProperty("webdriver.ie. driver", "/DRIVERS/IEDriverServer/IEDriverServer. exe "); Treiber = neuer InternetExplorerDriver(); Es ist auch logisch, eine @After-Methoden am Ende der Klassen zu haben, die den Webbrowser wieder schließen und beenden.

Zuerst wird dem Browsertreiber eine URL für eine zu testende Website gegeben und die wartende Methode sollte anschließend sofort ausgeführt werden, da es eine gewisse Zeit dauern kann, bis der Webbrowser startet und die Website abgerufen wird. driver.get("http://seleniumhq. org"); waitForAwhile(); Nun können unterschiedliche Seitenelemente aufrufbar sein.

WebElementelement = driver.findElement(By. id("unique_id")); WebElementelement = driver.findElement(By. name("name")); WebElementelement = driver.findElement(By. tagName("tagname"))); WebElementelement = driver.findElement(By. className ("classname")) ; élément NetzElement = driver.findElement(By. linkText("linkText")))) ; élément NetzElement = driver.findElement(By. partialLinkText("Teil des Links"))) ; élément NetzElement = driver.findElement(By. xpath ("//input")); Da ich lange brauchte, um die korrekten CSS-Selektoren zu spezifizieren, hier ein kleiner Hinweis: Der Weg zu einem der CSS-Elemente ist so aufgebaut, dass zuerst ein einzelnes Bauteil mit einer einmaligen Kennung verwendet wird und dann die Unterobjekte ohne Kennung über die Klassen-Namen anspricht.

Sie sehen so aus: driver.findElement(By. In der Selenium -Java-Apin-Lesung oder ganz simpel in der Eklipse - dem Zeitpunkt nach dem Web-Element - können die auszuführenden Verfahren eingegeben werden und sehen, welche Verfahren zur Verfügung stehen.

Mehr zum Thema