Selenium

quivadis

Aktives Mitglied
Hallo Freunde,

in meinem Projekt benutze ich Selenium zum Testen vom Webseiten.
Ich habe mehrere Testfälle geschrieben. Um die die Testfälle zu starten muss ja immer vorher manuell der Selenium-RC Server gestartet werden. Die Testfälle laufen in Junit 4.4 und das ganze ist ein Maven 2 Projekt. Als Brwowser kommt Firefox 3.6.15 unter Ubuntu zum Einsatz.

Nun zum Problem:
Ich möchte den Selenium-RC Server automatisch starten lassen. Nun gibt es ja in Selenium verschiedene Teilprojekte, in jeweils unterschiedlichen Versionen.
In Java habe ich mir eine Klasse geschrieben, welche den Selenium-RC Server startet und auch wieder beendet. Der eigentliche Junit-Test wird aber nicht gestartet, sondern bricht immer mit folgendender Fehlermeldung ab:
[Java] java.lang.NullPointerException
...
...
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at com.thoughtworks.selenium.SeleneseTestCase.runBare(SeleneseTestCase.java:212)
at org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:81)
at org.junit.runner.JUnitCore.run(JUnitCore.java:130)
at com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:97)
at com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:196)
at com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:65)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:115)
[/Java]

Der Browser wird geöffnet, aber dann geht es nicht weiter.
Ich habe mich dem Problem schon soweit genähert, das ich denke das es ein Versionskonflikt von Selenium ist, weil es spielt keine Rolle wie ich den Server starte.
Maven:
Java:
   <!-- SELENIUM -->
        <dependency>
            <groupId>org.seleniumhq.selenium.client-drivers</groupId>
            <artifactId>selenium-java-client-driver</artifactId>
            <version>1.0.2</version>

        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-server</artifactId>
            <version>2.0b2</version>

        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium.server</groupId>
            <artifactId>selenium-server-coreless</artifactId>
            <version>1.0.3</version>

        </dependency>
      <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-remote-client</artifactId>
            <version>2.0b1</version>

        </dependency>

Weiß jemand von euch eine Lösung des Problems? Oder ein Repository für Maven, wo die neuesten Seleniumversionen drin sind?

Grüße Quivadis
 
Zuletzt bearbeitet:

quivadis

Aktives Mitglied
Hallo,

kann mir wirklich keiner sagen, wie ich Selenium unter Ubuntu 10.04(lucid) LTS mit Firefox 3.6.15, Junit 4.8.x und maven 2 zum laufen bekomme?

Er startet den Selenium-Server und auch Firfox wird gestartet, aber dann passiert nix mehr und ich bekomme die oben geschreibene Fehlermeldung.

Ich benutze jetzt schon selenium 2.0b3.

Quivadis
 
Zuletzt bearbeitet:

fastjack

Top Contributor
Kannst Du sicherstellen, daß Dein selenium nicht null ist? Vielleicht wird es nicht richtig initialisiert (new DefaultSelenium...). Hast Du hier den richtigen Browser eingestellt (*firefox) ?
 

quivadis

Aktives Mitglied
ich sage mal ja. Die tests liefen ja schon mal, dann kam eine neue Version von Firefox, danach lief nichts mehr. Dann bin ich auf die neuesten Versionen von Selenium umgestiegen. Aber, leider auch ohne Erfolg.

[Java] Selenium selenium = new DefaultSelenium("localhost", 4444, "*chrome", "http://psrv-arwini:8080/arwinivv/");

selenium.start();[/code]
 

quivadis

Aktives Mitglied
ja, habe ich an der Fehlermeldung ändert sich nichts. *chrome startet ja nicht chrome, sondern firefox in einem anderen Modus, wo irgendwelche Sicherheitseinstellung für javascript anders sind. Mit *opera habe ich es auch schon probiert, selbe effekt.
 

fastjack

Top Contributor
ich denke eine setUp-Methode, ohne localhost reicht unter Ubuntu:

Java:
public void setUp() throws Exception {
    selenium = new DefaultSelenium( "10.0.0.1", 4444, "*firefox", "http://... ); // oder 127.0.0.1
    selenium.start();
}
 

quivadis

Aktives Mitglied
Ja, reicht auch, dann musst du aber immer noch von Hand den selenium-rc/server starten.

Bei mir läuft alles auf der selben Maschine, deswegen sollte es mit Localhost gehen.

Der eigentliche Fehler bleibt der selbe. Wenn ich in der Konsole den Server manuell starte, sehe ich das er eine Verbindung mit meiner Testklasse aufbaut.

Java:
11:39:47.217 INFO - Command request: getNewBrowserSession[*chrome, [url]http://psrv-arwini:8080/arwinivv/[/url], ] on session null
11:39:47.226 INFO - creating new remote session
11:39:47.382 INFO - Allocated session f772083c40904c17afb03fa044a32303 for [url]http://psrv-arwini:8080/arwinivv/[/url], launching...
11:39:47.432 INFO - Preparing Firefox profile...
11:39:50.987 INFO - Launching Firefox...

java.lang.NullPointerException


der Fehler passiert an der ersten Stelle bei
Java:
  Selenium.
obwohl ich das für die gesammte Klasse definiert habe
Java:
Selenium selenium;
 

quivadis

Aktives Mitglied
Ich habe es jetzt hin bekommen, das läuft. Leider kann ich nicht richtig nachvollziehen warum es jetzt plötzlich funktioniert.

Ich habe am Quelltext ja nix geändert, sondern nur an der pom.xml, die Versionen von Selenium angepasst.
pom.xml(Ausschnitt):
Java:
 <!-- SELENIUM -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-server</artifactId>
            <version>2.0b3</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-firefox-driver</artifactId>
            <version>2.0b3</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-remote-client</artifactId>
            <version>2.0b1</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-remote-control</artifactId>
            <version>2.0b3</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-support</artifactId>
            <version>2.0b3</version>
        </dependency>
        <dependency>
            <groupId>org.seleniumhq.selenium.server</groupId>
            <artifactId>selenium-server-coreless</artifactId>
            <version>1.0.3</version>
       </dependency>

Vielleicht liegt es ja an Maven das er, obwohl ich immer gewartet habe bis die Indizierung fertig war, das es jetzt geht.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Selenium . findElement . input Allgemeine Java-Themen 4
P Selenium . getText Problem Allgemeine Java-Themen 9
P Selenium . Probleme ein Iron Icon Element anzusprechen Allgemeine Java-Themen 2
P Selenium Scriipt zeigt Fehler beim Import Allgemeine Java-Themen 3
D Selenium - cannot find Chrome binary Allgemeine Java-Themen 6
N Ist Selenium hier das richtige Werkzeug? Allgemeine Java-Themen 1
S Selenium: WebDriverWait braucht zu lange Allgemeine Java-Themen 2
Husamoli345 Jsf-Selenium integration Allgemeine Java-Themen 43
R Java mit Selenium "Geister"Loop Allgemeine Java-Themen 1
E selenium script in Tampermonkey umschreiben Allgemeine Java-Themen 1
N Selenium ChromeDriver TimeOutException Allgemeine Java-Themen 1
1 Problem mit Selenium WebDriver findElement bei Instagram Bot Allgemeine Java-Themen 3
M Selenium JUnit Tests (Auswahl von Testmethoden auswerten) Allgemeine Java-Themen 5
R Selenium im geöffneten Browser Allgemeine Java-Themen 0
B Selenium öffnet nur den Browser Allgemeine Java-Themen 5
D Selenium WebDriver HtmlUnitDriver Problem beim Automatisieren Allgemeine Java-Themen 1
D Verwendung von Selenium Allgemeine Java-Themen 2
A Selenium HtmlUnitDriver CSS Warnings Allgemeine Java-Themen 0
X Selenium - Per Webdriver, Javascript generierte links klicken Allgemeine Java-Themen 0
M HTTP Selenium button klicken Allgemeine Java-Themen 2
J Selenium Referrer Allgemeine Java-Themen 8
T Selenium ?! Allgemeine Java-Themen 35
S Selenium Problemchen Allgemeine Java-Themen 2

Ähnliche Java Themen

Neue Themen


Oben