CasperJs onError不起作用

时间:2015-01-22 19:32:46

标签: casperjs

var casper = require('casper').create({
    //verbose: true,
    logLevel: "debug",
    waitTimeout: 20000,
    onError: function(self, m) {
        console.log('FATAL');
        self.exit();
    }
});

当我在命令行中执行我的代码时,它将打印一个CasperError。例如:

CasperError:无法在不存在的选择器上调度mousedown事件:#selector; 要么 CasperError:找不到元素匹配选择器:#selector

我希望它能输出文字'致命'。我尝试过casper.Echo()而不是console.log(),但仍然没有显示消息。

我也设置了:

casper.on('remote.message', function(message) {
     this.echo(message);
});

脚本console.log()中的其他位置会将文本输出到命令行。

所以在我看来,这个onError函数根本没有被调用。知道为什么会这样吗?

1 个答案:

答案 0 :(得分:3)

https://stackoverflow.com/a/20481404/4977318 - 这个答案对我有帮助。

所以,在你的情况下,它将是:

casper.on('error', function(msg,backtrace) {
    console.log('FATAL');
    this.exit();
});