2017-02-21 18 views
8

UPDATE: tl; dr; Ich aktualisierte meine npm-Pakete und konnte keine console.log Ausgabe mehr im Karma sehen. Es sieht so aus, als ob es eine Verhaltensänderung b/c ist, die nur die console.log Ausgabe auf der Ebene LOG_DEBUG anzeigt und sie unter LOG_INFO ausblendet. Wann wurde diese Änderung vorgenommen und gibt es eine Möglichkeit, sie rückgängig zu machen?console.log funktioniert bei keinem Karma-Projekt

ORIGINAL: Wenn ich Karma von einer Windows-Eingabeaufforderung ausführen, kann ich die Ausgabe von console.log nicht sehen. Ich habe es in vielen Projekten gut gesehen, aber jetzt funktioniert es plötzlich in keinem meiner Projekte. Dies scheint sich geändert zu haben, nachdem ich npm update in einem Projekt ausgeführt habe. Ich habe kein anderes Projekt npm update, aber sie alle aufgehört zu arbeiten.

Ich habe ein MCVE mit einem sauberen Projekt erstellt und ich sehe immer noch das gleiche Verhalten. Hier ist eine Liste der installierten Pakete in meinem sauberen Projekt (Ausgabe von npm list)

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

und hier ist der Config-Code

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"); 
    }); 
}); 

Hinweis ich bereits versucht haben, diese beiden zu meinem karma.conf.js hinzufügen. Sie machen keinen Unterschied.

 client: { 
      captureConsole: true 
     } 

     // or 

     loggers: [ 
      { type: "console" } 
     ] 

HINWEIS: Ich this issue auf Karma Github gesehen haben, keiner der Vorschläge dort helfen. Es beschreibt auch eine Einrichtung mit Mocha, ich benutze Jasmin - und die offizielle Problemumgehung ist es, captureConsole zu verwenden, die ich ausprobiert habe.

Ich habe auch eine gist für dieses Problem erstellt.

Umwelt Info:

  • Windows-10 Home w/alle aktuellen Updates
  • Knoten v7.2.1
  • Chrome 56
+0

versuchen 'es ("it", Funktion (erledigt)' und dann 'getan()' unter dem console.log – ssuperczynski

+0

@ssuperczynski Keine Änderung. –

Antwort

26

Sieht aus wie Karma ein Feature in v1.5.0 hinzugefügt Filtern der Konsolenaufzeichnung nach Protokollstufe. Hier ist ein Link zu der git pull request und der code changes zeigt was passiert ist. Ich konnte in den Dokumenten keine Updates zu dieser neuen Funktion finden. Basierend auf den Codeänderungen, hier sind die neuen Regeln

Sie können browserConsoleLogOptions in Ihrer Karma-Conf-Datei konfigurieren, um anzugeben, welche Meldungen auf Ihrer Terminal-Ausgabe angezeigt werden sollen. Legen Sie die Eigenschaft level fest, um die maximale Ebene anzugeben, die angezeigt werden soll. Um alle Nachrichten anzuzeigen, setzen Sie level auf eine leere Zeichenfolge.

Für meinen Fall, ich brauchte es so zu setzen:

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

UPDATE: Es gibt eine open git issue diese Diskussion. Es gibt tatsächlich zwei Änderungen in Karma 1.5, die hier von Bedeutung sind.

  1. Sie änderten die Reihenfolge der Schwere für Protokollmeldungen, so dass LOG == DEBUG. Der verwendete Schweregrad LOG>INFO.Das bedeutet, dass für jedes Projekt die Protokollstufe INFOconsole.log Nachrichten in der alten Version anzeigt und diese nicht im neuen System angezeigt werden.
  2. Wie oben erwähnt, wurde die Unterstützung der Filterkonsole um die Protokollebene browserConsoleLogOptions erweitert.
+0

sehr hilfreich zu ändern. Danke! –

+0

Puh. Vielen Dank für Bitte beachten Sie, dass diese Einstellung auf der obersten Ebene von config als Peer zu dem 'client'-Schlüssel erscheint, der nicht in der Konfiguration enthalten ist, wie dies in der Diskussion (https://github.com/karma- Läufer/Karma-Mocha/Ausgaben/47) – user1272965

Verwandte Themen