몇 가지 질문 :
몇 가지 질문 :
답변:
Karma는 브라우저 테스트 러너입니다.
기본적으로 브라우저에는 테스트 파일로드, 실행 및 결과보고라는 개념이 기본적으로 없습니다. 업장이하는 일은 (거의) :
각 부분을 보면 :
(1) 해당 파일은 실제 js 파일입니다. 카르마에게로드하는 방법을 알려줄 것입니다. requirejs를 사용하는 경우 카르마 플러그인이 있으며 일부 구성이 필요합니다.
(2) 이러한 테스트는 다양한 Javascript 테스트 프레임 워크 (Jasmine, QUnit, Mocha)로 작성 될 수 있습니다. 이것은 브라우저에서 실행되는 JS 코드입니다.
(3) 사용자 정의 웹 페이지는 테스트 프레임 워크마다 약간 씩 다릅니다. 이것이 카르마가 다른 프레임 워크를위한 플러그인을 가지고있는 이유입니다.
(4) Karma는 많은 브라우저 (FF, Chrome 또는 PhantomJ와 같은 헤드리스 브라우저)에서 페이지를 시작할 수 있습니다.
(5) 카르마에 대한보고는 다시 프레임 워크에 의존하며 카르마 플러그인을 처리합니다.
따라서 귀하의 질문에 대답하십시오 :
Karma를 디자인 한 사람의 논문은 기존 솔루션을 설명하고 솔루션을 비교하고 Karma 자체를 설명하는 데 매우 유익했습니다.
https://github.com/karma-runner/karma/blob/master/thesis.pdf
요약 : Karma는 테스트 러너입니다. Karma는 TDD / BDD 개발주기를 향상시키기 위해 다른 테스트 러너에 이점이 있습니다. 파일을 "감시"하므로 변경 사항을 저장할 때 Karma는 테스트를 실행하기 위해 컨텍스트를 웹 브라우저로 전환하지 않고 테스트를 즉시 실행하고 다시보고합니다.
요컨대, 질문은 Karma AND Jasmine 또는 Mocha 또는 QUnit이어야합니까?