programing

브라우저에서 testacular를 사용한 디버깅(현재의 카르마)

goodsources 2023. 3. 7. 21:21
반응형

브라우저에서 testacular를 사용한 디버깅(현재의 카르마)

유닛 테스트를 망가뜨렸을 때 디버깅하는 최선의 방법을 찾고 있습니다.일반적으로 이전 테스트 환경에서는 브라우저에서 테스트를 실행하여 테스트 또는 코드를 중단하고 테스트가 실패한 원인을 확인할 수 있었습니다.증언을 어떻게 해야 할지 모르겠군요유닛 테스트를 쉽게 디버깅할 수 있는 방법이 있나요?

  1. karma.conf.js:

    browsers = ['Chrome'];
    
  2. 사양에 실패했을 경우:

    it('spec', function() {
        debugger; // This is like setting a breakpoint
        // ...
    });
    
  3. 업보를 실행하다.
  4. 새로 연 Chrome 브라우저로 이동하여 콘솔을 열고 페이지를 새로 고칩니다.

이제 Chrome의 Developer Tools 소스 탭에 디버거에서 실행이 중지된 것을 볼 수 있습니다.

karma.config 파일에 "param = ['Crome'];"을 포함합니다.

Chrome이 열리면 상단에 "Karma - connected"가 표시되고 오른쪽 상단에 "Debug" 버튼이 표시됩니다.

이 디버깅 버튼을 클릭하면 "Karma DEBUG RUNNER" 탭이 열립니다.그런 다음 평소처럼 마우스 오른쪽 버튼을 클릭하여 요소를 검사하고 디버깅을 수행합니다.

코드를 변경할 필요가 없는 디버깅 방법을 다음과 같이 찾았습니다(예: "debugger" 문 추가).

카르마 컨피규레이션파일에서 "single Run"을 false로 설정하여 카르마가 디버깅포트에서 리슨되고 브라우저가 다음 URL을 실행하고 디버깅할 수 있도록 합니다.

캡처한 브라우저로 이동하여 [디버깅]버튼을 클릭합니다(또는 [열기]).http://localhost:9876/debug.html웹 인스펙터를 사용하여 상황을 확인합니다(웹 인스펙터가 열리면 debug.html 페이지를 새로 고쳐야 합니다).

콘솔에서 어떤 it() 스테이트먼트가 파손되었는지, 그 이유를 통지해야 합니다.예를 들어 다음과 같습니다.

Todos Add a new todo should add a new todo FAILED
expected todo.length to be 1 but was 0

단, 다음과 같이 설정하는 것이 도움이 될 수 있습니다.

logLevel = LOG_DEBUG;

당신의 카르마.conf.disc 파일에 있습니다.

언급URL : https://stackoverflow.com/questions/15906903/debug-in-browser-using-testacular-now-karma

반응형