无法让 console.log 在 CasperJS 中进行评估
Can't get console.log working inside evaluate in CasperJS
我正在用 casperjs 测试一些东西,我在调试简单的东西时遇到了麻烦,我想 运行 一个 console.log 内部评估,阅读一些示例但仍然无法正常工作.这是我的测试代码:
var casper = require("casper").create();
var system = require('system');
var url = casper.cli.get(0);
var casper = require('casper').create({
verbose: true,
logLevel: "debug"
});
casper.onConsoleMessage = function(msg) {
system.stderr.writeLine('console: ' + msg);
};
casper.start(url, function () {
this.evaluate(function() { console.log('test'); });
});
casper.run(function() {
console.log('done');
this.exit();
});
我打印了 "done",但从来没有打印过 "test",我做错了什么?
刚找到解决办法,我用的是phantomjs的方法,不得不用
casper.on('remote.message', function(msg) {
this.echo('remote message caught: ' + msg);
})
而不是onConsoleMessage
您也可以尝试以下解决方案
//Code to display Console errors
casper.on('remote.message', function (msg) {
console.log('remote message caught: ' + msg);
});
//Code to display errors from the page
casper.on('page.error', function (msg, trace) {
console.log('Error: ' + msg, 'ERROR');
});
我正在用 casperjs 测试一些东西,我在调试简单的东西时遇到了麻烦,我想 运行 一个 console.log 内部评估,阅读一些示例但仍然无法正常工作.这是我的测试代码:
var casper = require("casper").create();
var system = require('system');
var url = casper.cli.get(0);
var casper = require('casper').create({
verbose: true,
logLevel: "debug"
});
casper.onConsoleMessage = function(msg) {
system.stderr.writeLine('console: ' + msg);
};
casper.start(url, function () {
this.evaluate(function() { console.log('test'); });
});
casper.run(function() {
console.log('done');
this.exit();
});
我打印了 "done",但从来没有打印过 "test",我做错了什么?
刚找到解决办法,我用的是phantomjs的方法,不得不用
casper.on('remote.message', function(msg) {
this.echo('remote message caught: ' + msg);
})
而不是onConsoleMessage
您也可以尝试以下解决方案
//Code to display Console errors
casper.on('remote.message', function (msg) {
console.log('remote message caught: ' + msg);
});
//Code to display errors from the page
casper.on('page.error', function (msg, trace) {
console.log('Error: ' + msg, 'ERROR');
});