自動テストに PhantomJS を使用しています。自動化されたテストがコンソール ログにアクセスできる方法があるかどうかを知りたいです。ヘッドレス ブラウザであるため、phantomJS がコンソール ログを発行するかどうかはわかりません。
1 に答える
2
どう言う意味ですか ?
もちろん、コンソールに書き込んだり、スクリプトで引数を使用したりできます。
これは非常に基本的な例です
var args = require('system').args;
if (args.length === 1) {
console.log('Try to pass some arguments when invoking this script!');
}
else {
args.forEach(function(arg, i) {
console.log(i + ': ' + arg);
});
}
更新 PhantomJS プログラム自体と、ヘッドレス ブラウザで開いた Web ページという 2 つのコンテキストに混乱しているようです。まったく同じではありません。
ハンドラーをwebpage.onConsoleMessageに追加するだけです
var webPage = require('webpage');
var page = webPage.create();
page.onConsoleMessage = function(msg, lineNum, sourceId) {
console.log('CONSOLE: ' + msg + ' (from line #' + lineNum + ' in "' + sourceId + '")');
}
ここでは、Web ページ コンソールからプログラム コンソールに何かを書き込んでいます。
于 2013-04-11T07:23:13.837 に答える