Programmausführung beendet?

eMmiE

Bekanntes Mitglied
Hallo,

ich habe ein Problem mit der Ausführung eines Programms

Es handelt sich hierbei um ein "normales" Programm, wie ich sie sonst auch immer schreibe.
Das Programm lässt sich korrekt parsen.

Wenn ich den Run-Button bei eclipse drücke, dann wird das Programm auh ausgeführt
Dass das Programm läuft, habe ich mehrfach mithilfe von sysouts überprüft

Wenn jetzt aber die VM an die Ausführung von
Code:
HtmlUnitDriver driver = new HtmlUnitDriver()
kommt (-> org.openqa.selenium.htmlunit.HtmlUnitDriver), dann wird nichts weiter ausgeführt

Das sysout davor wird ausgegeben, alle folgenden nicht (auch andere Codezeilen)

Es wird keine Exception geworfen, das Programm wird nicht, wie bei System.exit() abgebrochen, sondern es läuft im Hintergrund weiter (javaw.exe - Thread wird ausgeführt)

Eclipse zeigt keinen Fehlimport an, sondern alles ist ohne Warnung und Error

Woran liegt das?

(Kann vllt. sein, dass es damit zusammenhängt: Er findet auch den Konstruktor
Code:
new HtmlUnitDriver(true)
nicht)

Gruß eMmiE

P.S.: Gehört zu einem Projekt, was recht dringend ist
 
Nein,
funktioniert nicht

Er sagt, er findet com/gargoylesoftware/iwas/DomNode nicht

lt. der selenium - api brauchen wir das aber gar nicht, oder?

Er findet übrigens wieder den Konstruktor HtmlUnitDriver(false) nicht...
Kann das daran liegen, dass ich eine zu aktuelle Version habe und die das bei dem jar-File nicht mehr drin haben???

Wie kommt man denn da an Infos?

Gruß eMmiE
 
Ich habe es grad mal heruntergeladen und festgestellt: geht bei mir auch nicht.

Dein Fehler com/gargoylesoftware/iwas/DomNode
kommt aber dadurch zustande, das dir jars im ClassPath fehlen. Ich habe, da ich von Selenium überhaupt keine Ahnung habe, alle 37 jar-Dateien aus dem lib-Verzeichnis, genommen und damit probiert.

Und.. geht immer noch nicht.:noe:

Und zwar das gleiche Verhalten, das du beobachtest, scheint endlos zu laufen, keine Exception,...
Das ist meiner Einschätzung darin begründet, das Javascript sich nicht gut mit HTMLUnit verträgt.

ich habe daher den Treiber getauscht und folgendes läuft bei mir.

Java:
public class Example {
    public static void main(String[] args) {
	// Create a new instance of the html unit driver
	// Notice that the remainder of the code relies on the interface,
	// not the implementation.
	WebDriver driver = new FirefoxDriver();

	// And now use this to visit Google
	driver.get("http://www.google.de");

	// Find the text input element by its name
	WebElement element = driver.findElement(By.name("q"));

	// Enter something to search for
	element.sendKeys("Cheese!");

	// Now submit the form. WebDriver will find the form for us from the
	// element
	element.submit();

	// Check the title of the page
	System.out.println("Page title is: " + driver.getTitle());

	driver.quit();
    }
}
 
Eigentlich müsste der HtmlUnitDriver schon von der Intention her alles machen können, oder?

Dazu ist er schließlich da.
Liegt das Problem jetzt darin, dass mein Browser die Befehle des HtmlUnitDrivers nicht annimmt?

Und wie hängt das jetzt auch damit zusammen, dass er den Konstruktor
Code:
new HtmlUnitDriver(true)
nicht findet, zusammen?

Den sollte er ja eigentlich finden, ich habe jedenfalls beim Überfliegen der ChangeLogs nichts gefunden, was auf eine Änderung hinweisen könnte

Gruß eMmiE
 
Dein anderes Beispiel mit dem Firefox Driver funktioniert bei mir auh nicht, er sagt er findet com.google.common.base.function nicht

Wo kann man denn z.B. ein Tutorial zu Selenium machen
Kennst du da eine Addresse (klar: google -> "selenium tutorial"...)
Wär echt nett

Gruß eMmiE
 
Wie ich schon sagte, habe ich keine Ahnung von Selenium. Sorry.

Folgendes Jars sind in meinem Build-Path in Eclipse

  • selenium-java-2.42.2.jar
  • apache-mime4j-0.6.jar
  • bsh-1.3.0.jar
  • cglib-nodep-2.1_3.jar
  • commons-codec-1.9.jar
  • commons-collections-3.2.1.jar
  • commons-exec-1.1.jar
  • commons-io-2.4.jar
  • commons-jxpath-1.3.jar
  • commons-lang3-3.2.1.jar
  • commons-logging-1.1.3.jar
  • cssparser-0.9.11.jar
  • guava-15.0.jar
  • hamcrest-core-1.3.jar
  • hamcrest-library-1.3.jar
  • htmlunit-2.14.jar
  • htmlunit-core-js-2.14.jar
  • httpclient-4.3.2.jar
  • httpcore-4.3.1.jar
  • httpmime-4.3.2.jar
  • ini4j-0.5.2.jar
  • jcommander-1.29.jar
  • jetty-websocket-8.1.8.jar
  • jna-3.4.0.jar
  • jna-platform-3.4.0.jar
  • json-20080701.jar
  • junit-dep-4.11.jar
  • nekohtml-1.9.20.jar
  • netty-3.5.7.Final.jar
  • operadriver-1.5.jar
  • phantomjsdriver-1.1.0.jar
  • protobuf-java-2.4.1.jar
  • sac-1.3.jar
  • serializer-2.7.1.jar
  • testng-6.8.5.jar
  • xalan-2.7.1.jar
  • xercesImpl-2.11.0.jar
  • xml-apis-1.4.01.jar
 
Ich habs auch mit HtmlUnitDriver geschafft!

Es wird HtmlUnit benutzt und da muss bei mir ein Proxy eingestellt werden.

Java:
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.htmlunit.HtmlUnitDriver;

import com.gargoylesoftware.htmlunit.BrowserVersion;

public class Example {
    public static void main(String[] args) {
	// Create a new instance of the html unit driver
	// Notice that the remainder of the code relies on the interface,
	// not the implementation.
	// WebDriver driver = new FirefoxDriver();
	WebDriver driver = new HtmlUnitDriver();
	((HtmlUnitDriver) driver).setProxy("proxyServer", proxyPort);
	// And now use this to visit Google
	driver.get("http://www.google.de");
	String pageSource = driver.getPageSource();
	System.out.println(pageSource);
	// Find the text input element by its name
	WebElement element = driver.findElement(By.name("q"));
	//
	// // Enter something to search for
	element.sendKeys("Cheese!");
	//
	// // Now submit the form. WebDriver will find the form for us from the
	// // element
	element.submit();
	//
	// // Check the title of the page
	System.out.println("Page title is: " + driver.getTitle());

	driver.quit();
    }
}
 
Danke,

auch wenn du "nichts" gewusst hast, warst du trotzdem eine große Hilfe
Funktioniert jetzt halbwegs, muss mich nur noch weiter einarbeiten:toll:

Gruß eMmiE
 

Neue Themen


Zurück
Oben