簡體   English   中英

console.log 不適用於任何業力項目

[英]console.log not working on any karma project

更新:tl;博士; 我更新了我的 npm 包,在 karma 中再也看不到任何console.log輸出。 看起來它是行為更改的 b/c,僅在LOG_DEBUG級別顯示console.log輸出並將其隱藏在LOG_INFO 該更改是何時進行的,有沒有辦法恢復它?

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

我用一個干凈的項目創建了一個 MCVE,但我仍然看到相同的行為。 這是我的干凈項目中已安裝軟件包的列表(來自npm list的輸出)

C:\...\mvce>npm list
mvce@1.0.0 C:\...\mvce
+-- jasmine-core@2.5.2
+-- karma@1.5.0
+-- karma-chrome-launcher@2.0.0
+-- karma-jasmine@1.1.0
+-- karma-phantomjs-launcher@1.0.2
`-- phantomjs@2.1.7

這是配置代碼

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" }
        ]

注意:我在 karma github 上看到過這個問題,那里的建議都沒有幫助。 此外,它描述了一個帶有 mocha 的設置,我正在使用 jasmine - 官方解決方法是使用我嘗試過的captureConsole

我還為這個問題創建了一個要點

環境信息:

  • 帶有所有當前更新的 Windows 10 家庭版
  • 節點 v7.2.1
  • 鉻 56

看起來 karma 在 v1.5.0 中添加了一個功能來按日志級別過濾控制台捕獲。 這是git pull 請求的鏈接, 代碼更改顯示發生了什么。 我在文檔中找不到有關此新功能的任何更新。 基於代碼更改,這里是新規則

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

對於我的情況,我需要這樣設置:

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

更新:有一個open git issue討論這個。 實際上,業力 1.5 中有兩個變化在這里很重要。

  1. 他們更改了日志消息的嚴重性順序,以便LOG == DEBUG 嚴重性使用LOG > INFO 這意味着任何將日志級別設置為INFO的項目都會在舊版本中顯示console.log消息,而不會在新系統中顯示它們。
  2. 如上所述,他們使用browserConsoleLogOptions添加了按日志級別過濾控制台的支持。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM