2017-02-21 6 views
8

업데이트 : tl; dr; 내 npm 패키지를 업데이트했고 업보에서 더 이상 console.log 출력을 볼 수 없었습니다. 그것은 단지 console.log 출력을 LOG_DEBUG 수준으로 표시하고 LOG_INFO에 숨기는 동작 변경의 b/c 인 것처럼 보입니다. 그 변화가 언제 있었고 그것을 되돌릴 수있는 방법이 있습니까?카르마 프로젝트에서 console.log가 작동하지 않습니다.

원본 : 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에이 두 가지를 추가하는 시도

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

주입니다. 그들은 아무런 차이가 없습니다.

 client: { 
      captureConsole: true 
     } 

     // or 

     loggers: [ 
      { type: "console" } 
     ] 

참고 : 나는 카르마 GitHub의에 this issue을 본 적이 제안의 하나도 도움이되지 않습니다. 또한, 그것은 모카를 사용하는 설정을 설명합니다. 저는 재스민을 사용하고 있습니다. 공식 해결 방법은 시도한 captureConsole을 사용하는 것입니다.

이 문제에 대해서는 gist도 생성했습니다.

환경 정보 : 카르마가 v1.5.0에 기능을 추가처럼 w

  • 윈도우 10 홈/모든 최신 업데이트
  • 노드 v7.2.1
  • 크롬 56
+0

시도는 CONSOLE.LOG – ssuperczynski

+0

@ssuperczynski 변화 없음. –

답변

26

이 보이는 로그 수준에 따라 콘솔 캡처를 필터링하십시오. 무슨 일이 있었는지 보여주는 git pull requestcode changes에 대한 링크가 있습니다. 이 새로운 기능에 대한 문서에서 업데이트를 찾을 수 없습니다. 코드 변경에 따라 다음은 새로운 규칙입니다

카르마 conf 파일에 browserConsoleLogOptions을 구성하여 터미널 출력에 표시 할 메시지를 지정할 수 있습니다. 디스플레이 할 최대 수준을 지정하려면 level 속성을 설정하십시오. 모든 메시지를 표시하려면 level을 빈 문자열로 설정하십시오. 내 경우를 들어

는,이처럼 설정하는 데 필요한 :

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

UPDATE :이를 논의하는 open git issue있다. 카르마 1.5에는 실제로 두 가지 변화가 있습니다. LOG == DEBUG을 수 있도록

  1. 그들은 로그 메시지 심각도의 순서를 변경했습니다. 심각도는 LOG>INFO입니다.즉, 모든 프로젝트의 로그 수준이 INFO으로 설정되면 이전 버전에 console.log 메시지가 표시되고 새 시스템에는 표시되지 않습니다.
  2. 위에서 언급 한 것처럼 로그 수준에 따라 필터 콘솔에 대한 지원이 browserConsoleLogOptions으로 추가되었습니다.
+0

아주 도움이. 감사합니다! –

+0

휴. 감사에 대한 아래') (다'다음)이 ("가", 기능 (완료 '로 변경'하고 미래의 독자들은이 설정이 config의 최상위 레벨에 있으며, 여기에있는 많은 논의에 의해 암시 된 것처럼,'client' 키의 피어로서 나타납니다 (https://github.com/karma- 러너/카르마 - 모카/이슈/47) – user1272965

관련 문제