如何使用Chrome远程调试CasperJS?

时间:2014-10-29 12:56:47

标签: google-chrome debugging phantomjs remote-debugging casperjs

在Chrome中调试CasperJS脚本有哪些步骤?我正在尝试在我的Windows 8.1上进行调试。

1)我的测试c:\ temp \ googletestin.js有:

debugger;

casper.test.begin('Google search retrieves 10 or more results',3, function suite(test) {

    casper.start("http://www.google.com.br/", function() {
        this.echo(">>Number 1");
        test.assertTitle("Google", "Title home page google");

        casper.echo(">>Number 2");
        test.assertExists('form[action="/search"]', "find form search");

        casper.echo(">>Number 3");
        this.fill('form[action="/search"]', {
            q: "casperjs"
        }, true);

        this.echo(">>Number 4");
        casper.capture('test.png', undefined, {
        format: 'png',
        quality: 75
        });

    })

    casper.run(function() {
        test.done();
    });
});

2)打开cmd.exe

3)执行命令行

>casperjs test c:\temp\googletesting.js --remote-debugger-port=9222 --remote-debugger-autorun=yes

ps:测试一直运行到正常结束

4)打开chrome和字段:url:http:localhost:9222

5)页面空白

6)打开控制台(f12)并执行:__run();但没有发生任何事情

1 个答案:

答案 0 :(得分:2)

在第3步中,您需要将调试器选项传递给CasperJS,而不是通过casper.cli可以访问的脚本。您也不应该让脚本自动启动(--remote-debugger-autorun=yes),否则它将在您调试之前运行。正如您所说,您可以打开Chrome / Safari并致电__run()以触发脚本执行。

casperjs --remote-debugger-port=9222 test yourScript.js