3
我正在使用PhantomJS進行自動化測試。我想知道是否有自動化測試可以訪問控制檯日誌的方式。我不知道phantomJS是否發佈控制檯日誌,因爲它是一個無頭瀏覽器。phantomJS中的自動化測試:如何訪問控制檯日誌
我正在使用PhantomJS進行自動化測試。我想知道是否有自動化測試可以訪問控制檯日誌的方式。我不知道phantomJS是否發佈控制檯日誌,因爲它是一個無頭瀏覽器。phantomJS中的自動化測試:如何訪問控制檯日誌
你是什麼意思?
當然,您可以寫入控制檯或在腳本中使用參數。
這是一個非常簡單的例子
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);
});
}
UPDATE 你似乎是由兩個上下文混淆:在PhantomJS程序本身並在無頭的瀏覽器中打開的網頁。這完全不一樣。
只需添加一個處理程序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 + '")');
}
在這裏,我們從網頁控制檯來的程序控制臺寫服用點。
但是,如何讀取寫入控制檯的內容?這將有助於弄清楚爲什麼測試失敗,或者爲什麼它可以在Chrome中運行,但不能在PhantomJS中運行。 – vegemite4me 2013-12-04 15:40:58
剛剛更新了我的答案 – Cybermaxs 2013-12-04 16:03:03