ProgramingTip

console.log () 호출을 Jasmine 테스트의 표준 출력으로 리디렉션

bestdevel 2020. 12. 4. 19:48
반응형

console.log () 호출을 Jasmine 테스트의 표준 출력으로 리디렉션


Jasmine을 통해 jasmine-maven-plugin을 사용하고 Maven 빌드 출력에서 ​​console.log () 메시지를보고 싶습니다. 달성하는 방법이 있습니까?

console.log ()를 리디렉션 할 수없는 경우 Maven 빌드 출력에 표시되는 다른 방법이 있습니까?

Jenkins에서 헤드리스 방식으로 기본적인 테스트를 실행하고 성능 테스트에서 디버그 출력을 얻을 수있는 수단을 원합니다.


시험

console.info('foo')

테스트 자바 펼쳐에서.


당신이 사용할 수있는 :

jasmine.log("I've got a big log.");

NB : 아래 douglas-treadwell의 의견을 참조하십시오.

이것은 Jasmine 1.x를 나타냅니다. Jasmine 2.0에서는 console.log를 직접 사용하십시오.


노드 환경에서 실행중인 경우. 당신은 사용할 수 있습니다

process.stdout.write ( "이 콘솔로 전송됩니다");


나는 jasmine 2통해 guard과를 사용 하고 있으며 테스트 내의 phantom js표준 console.log메시지 자스민가 사양 주자로 잘 콘솔의 출력 된다는 것을 발견했습니다 .

또한 console.log테스트중인 자바 펼쳐 코드 요소 내의 메시지는 작성 stdout되지만 console.log테스트 자체 내의 메시지 는 작성 되지 않음을 발견 했습니다.


나는 불가능 하다고 생각한다 .

사양 로더에서 console.log 구현을 설치했습니다. (jQuery 사용) :

var console = {
    panel: $('body').append('<div>').css({position:'fixed', top:0, right:0,background:'transparent'}),
    log: function(m){
        this.panel.prepend('<div>'+m+'</div>');
    }       

};
        console.log('message 1');
        console.log('message 2');

여기에 당신은 기능 예를


테스트가 완료되고 브라우저가 닫힌 후 검토 할 데이터를 테스트 할 수 있습니다 터미널 창에 출력이 필사적이라면 console.error()트릭을 수행하는 것입니다.


grunt / karma / jasmine (karma-jasmine 0.2.2)를 사용하여 동일한 문제가 발생했습니다.

Dave Sag가 말한 내용을 공연 기 console.log위해 테스트중인 코드의 모든 메시지가 말하는 실행 내 describe() {}it() {}블록의 메시지는 아무것도 기록하지 않습니다 .

나는 않았다 당신이에서 로그인 할 수있는 것을 발견 beforeEach() {}블록. 그것은 나를 위해 일했습니다.

beforeEach(function() {
  this.model = new blahModel();
  console.log('this.model = ', this.model);
});

하는 것이 단지 브라우저 콘솔과 명령 줄에 로그인 할 몇 가지 가지 기록합니다. 테스트 된 코드 블록의 console.log 문이 명령 줄에 기록 될 때 다소 이상합니다. 또한 여기서 일관된 로깅을위한 더 나은 접근 방식을 찾았 습니다 .

업데이트 : 로깅이 차단되는 것을보고 있고,이를 막는 다른 오류가 있다고 생각합니다.


1) pom.xml이있는 디렉토리 디렉토리로 이동합니다. cmd에서 다음 명령을 실행하십시오. mvn jasmine : bdd

2) localhost URL : localhost : 8234 (예제 일뿐)이 표시됩니다.

3) 브라우저 에서이 URL을 실행하십시오. 이제 모든 테스트 케이스가 실행됩니다.

4)이 페이지의 요소 검사를 수행하십시오. 브라우저 콘솔에서 모든 console.log () 또는 console.error () 추적을 볼 수 있습니다.

참고 URL : https://stackoverflow.com/questions/11049996/redirect-calls-to-console-log-to-standard-output-in-jasmine-tests

반응형