2017-02-21 34 views
8

UPDATE:tl; dr;我更新了我的npm包,並且在業力中看不到任何console.log輸出。看起來像是行爲變化的B/C,它只顯示console.log輸出在LOG_DEBUG級別並隱藏在LOG_INFO。這種變化是什麼時候發生的,並且有辦法恢復它嗎?console.log不適用於任何業務項目

ORIGINAL:當我從Windows命令提示符運行karma時,我看不到console.log的輸出。我曾在許多項目中看到它很好,但現在它突然不適用於我的任何項目。在一個項目中運行npm update後,這似乎發生了變化。我沒有npm update任何其他項目,但他們都停止工作。

我用一個乾淨的項目創建了一個MCVE,我仍然看到相同的行爲。下面是安裝的軟件包在我乾淨的項目列表(從npm list輸出)

C:\...\mvce>npm list 
[email protected] C:\...\mvce 
+-- [email protected] 
+-- [email protected] 
+-- [email protected] 
+-- [email protected] 
+-- [email protected] 
`-- [email protected] 

和這裏的配置代碼

karma.conf.js 

module.exports = function(config) { 
    config.set({ 
     autoWatch: false, 
     singleRun: true, 
     basePath: ".", 
     frameworks: ["jasmine"], 
     logLevel: "INFO", 
     browsers: ["PhantomJS", "Chrome"], 
     files: ["test.js"] 
    }); 
}; 



test.js 

describe("describe", function(){ 
    it("it", function(){ 
     console.log("test"); 
    }); 
}); 

注意我已經嘗試添加這兩種我karma.conf.js。他們沒有區別。

 client: { 
      captureConsole: true 
     } 

     // or 

     loggers: [ 
      { type: "console" } 
     ] 

注:我已經看到了因果報應github上​​,沒有任何的建議有幫助。此外,它正在描述一個設置w/mocha,我正在使用茉莉花 - 官方解決方法是使用我試過的captureConsole

我還爲此問題創建了一個gist

環境信息:

  • 的Windows 10家瓦特/所有最新更新的
  • 節點v7.2.1
  • 鉻56
+0

嘗試改變'它( 「它」,函數(完成)'然後'做()'的執行console.log – ssuperczynski

+0

@ssuperczynski沒有變化。 –

回答

26

看起來人緣在V1.5.0增加了一個功能,按日誌級別過濾控制檯捕獲。這裏有一個鏈接到git pull requestcode changes顯示發生了什麼。我無法在有關此新功能的文檔中找到任何更新。基於代碼更改,下面是新規則

您可以在您的karma conf文件中配置browserConsoleLogOptions以指定在終端輸出中應顯示哪些消息。設置level屬性以指定應顯示的最大級別。要顯示所有消息,請將level設置爲空字符串。

對於我來說,我需要設置這樣的:

browserConsoleLogOptions: { 
    terminal: true, 
    level: "" 
} 

更新:這裏有一個open git issue討論這個。實際上在這裏有兩個業力1.5的變化。

  1. 他們更改日誌消息的嚴重性順序,以便LOG == DEBUG。使用的嚴重程度爲LOG>INFO。這意味着任何項目的日誌級別設置爲INFO將在舊版本中顯示console.log消息,並且不在新系統中顯示它們。
  2. 如上所述,他們增加了支持通過日誌級別與browserConsoleLogOptions過濾控制檯。
+0

相當有幫助,謝謝! –

+0

唷。謝謝下這個!未來的讀者請注意,這個設置出現在配置的頂層,作爲客戶端的一個對等端,而不是在它之內,正如許多討論中所暗示的那樣(https://github.com/karma-亞軍/卡瑪 - 摩卡/問題/ 47) – user1272965

相關問題