2013-01-02 6 views
5

Ich versuche, Remote-Debugging-Option für CasperJS zu verwenden.CasperJS Remote-Debugging-Option

Ich führe dies auf Port 6666.

$casperjs --remote-debugger-port=6666 myscript.js 

Der Debugger startet und ich bin in der Lage auf url WebKit Inspektor zuzugreifen

http://localhost:6666/ 

ich erste URL als about:blank sehe.

Wenn ich darauf klicke, wird Webseiteninspektor geladen.

Wenn ich _run() in Konsole eingeben, erhalte ich

Referenz Fehler wird _run nicht Fehler definiert.

Ich kann nicht weiter gehen. Bitte lassen Sie mich wissen, wenn ich irgendwo Korrekturen vornehmen muss.

Muss ich auch explizite Haltepunkte in CasperJS-Skript setzen. Wenn ich muss, wie?

UPDATE 1

Versuchen --remote-Debugger-Autorun = yes

$casperjs --remote-debugger-port=6666 --remote-debugger-autorun=yes myscript.js 

Dies führt das Skript sofort wie in Hilfe angegeben. Der Debugger wird jedoch weiterhin ausgeführt, und der Prozess wird nicht beendet.

OUTPUT

Jetzt kann ich angeforderte URL unten sehen: blank.

Wenn ich auf ungefähr: leere oder angeforderte URL klicke, öffnet WebKit Inspektor.

Aber ich bin wieder stecken.

UPDATE 2

versuchte auch Beispiele mit PhantomJS portiert auszuführen.

Ergebnis ist gleich. Ich stecke auf einem leeren WebKit Inspector-Fenster fest.

Antwort

0

Ich kann den Ticket-ATM nicht finden, aber ich glaube nicht, dass Sie casperJS im Debugger-Modus starten können. Sie können jedoch CasperJS als Bibliothek zu einem PhantomJS-Skript hinzufügen:

phantom.casperPath = '/usr/local/Cellar/casperjs/1.0.1/libexec/'; phantom.injectJs ('/ usr/local/Keller/casperjs/1.0.1/libexec/bin/bootstrap.js');

6

Versuchen Sie __run() anstelle von _run().

Sie können Haltepunkte auch zur Entwurfszeit platzieren, wenn Sie "Debugger" schreiben. in deinem Skript. Der Debugger wird bei diesen Zeilen unterbrochen.

Ich habe ein anderes Problem, das ich jetzt erforsche - die casper.exit() - Funktion beendet den Phantomprozess nicht. Es zeigt die folgende Zeile:

Phantom::exit() called but not quitting in debug mode. 

Man muss den Prozess manuell töten ...

+0

diese. Der zweite Unterstrich war der Fluch meiner Frustration. – grokpot