February 16, 2009

Selenium mit Java

« Apache Lucene | Main | Beispiel Apache und Tomcat mit modjk »

Selenium ist ein Testframework für Webanwendungen. Mit Hilfe der Selenium IDE im Browser können Nutzereingaben wie Formulareingaben und Submits aufgezeichnet werden und nachträglich zu Testzwecken wiederholt werden. Die Eingaben können in unterschiedlichen Formaten, wie HTML, Java, .Net, Ruby usw., abgespeichert werden.

Für einen Aufruf aus Java heraus ist der Selenium Server wie auch der der Selenium Client notwendig. In einem Maven Projekt, können diese Bibliotheken über folgende Dependencies geholt werden.


<dependency>
  <groupId>org.openqa.selenium.client-drivers</groupId>
  <artifactId>selenium-java-client-driver</artifactId>
  <version>0.9.2</version>
</dependency>
<dependency>
  <groupId>org.openqa.selenium.server</groupId>
  <artifactId>selenium-server</artifactId>
  <version>1.0-20081010.060147</version>
</dependency>

Danach kann der SeleniumServer und nachfolgend der Selenium Client mit den zugehörigen Tests ausgeführt werden:

SeleniumServer server = new SeleniumServer();
DefaultSelenium selenium = null;
try {
  server.start();
  selenium = new DefaultSelenium("localhost", 4444, "*firefox3 /usr/lib/firefox-3.0.5/firefox", "http://localhost/");
  selenium.start();
  selenium.open("/Login.jsp");
  selenium.type("user", "username");
  selenium.type("pass", "pass");
  selenium.click("submit");
  selenium.waitForPageToLoad("30000");
  selenium.click("link=Overview");
  selenium.waitForPageToLoad("30000");
} catch (Exception ex) {
  ex.printStackTrace();
} finally {
  selenium.stop();
  server.stop();
}

Die Nutzereingaben können über Firefox aus der Selenium IDE als Java kopiert werden und in den Beispielcode eingefügt werden.

Viele Grüße Rafael

Technorati Tags:

Posted by rafael.sobek at 7:47 PM in Uncategorized

 

« February »
SunMonTueWedThuFriSat
1234567
891011121314
15161718192021
22232425262728