google-chrome - 如何使用 Chrome 远程调试 CasperJS?

标签 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();但什么也没发生

最佳答案

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

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

关于google-chrome - 如何使用 Chrome 远程调试 CasperJS?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26630979/

相关文章:

google-chrome - "http://*/*"、 "https://*/*"和 "<all_urls>"在 Chrome 扩展权限的上下文中是什么意思

html - 如何在响应式网页上以 Logo 为中心

c++ - 未捕获的异常 - 调试技术 (C++)

PhantomJS 不支持 Javascript 国际化 API

javascript - getElementsByClassName 在 Chrome 中究竟是如何工作的?,特别是 w.r.t.节点列表和 DOM

css - Flexbox 在 Chrome 中的 <li> 内放置空行

debugging - 如何调试包含在 libtool 脚本中的程序?

ios - libc++abi.dylib : handler threw exception -- but no stack trace in XCode

javascript - 为什么我需要一个 Selenium Server 而不是直接调用 WebDriver 实现

pdf - PhantomJS 生成大型 PDF