티스토리 뷰

Programming language/javascript

karma 설정

hello-world 2017. 5. 31. 16:36
728x90
반응형

기본적으로 jasmine + karma 로 셋팅


1. 카르마 설치

   npm install karma -g ( 글로벌 설치로 해야 몸과 마음이 편할 수 있다)


2. 카르마 초기화

   karma init


   karma.conf.js 파일이 생성되면 내부에 

   config.set({}) 메서드 내부에 아래와 같이 두군데 경로 확인.

   basePath:'진입 경로'

   files:[

       '테스트할 파일( 의존성 파일 모두 선언해야 한다 

       - 예 angular를 사용하고 있다면 angular.js 파일 경로를 적어주어야 한다. )' 

   ]

   browsers:['PhantomJS']


3. karma 설정시 필요한 devDependencies 

    ( 아래 항목 설치 npm install 플러그인명 --save-dev )

"http-server": "^0.10.0",
"jasmine-core": "^2.6.2",
"jasmine-spec-reporter": "^4.1.0",
"karma": "^1.7.0",
"karma-chrome-launcher": "^2.1.1",
"karma-firefox-launcher": "^1.0.1",
"karma-jasmine": "^1.1.0",
"karma-junit-reporter": "^1.2.0",
"karma-phantomjs-launcher": "^1.0.4",
"karma-spec-reporter": "0.0.31",
"protractor": "^5.1.2"


4. package.json 에 아래처럼 되어 있는지 확인

   "scripts":{ "test" : karma start karma.conf.js } 


   - 이 부분은 커맨드라인에 npm init 해서 모듈 초기화하면 아래와 같이 물어본다.

test command: karma start karma.conf.js ( 커맨드라인으로 karma 실행할 명령어 )




5. karma 실행

    npm test 



추가적으로 karma-coverage를 사용할때

karma.conf.js 내용에 아래 코드 추가


preprocessors:{ '**/*.js':'coverage'},

coverageReporter:{type:'html', dir:'coverage/'}, 

//type - html, lcov, lcovonly, text, text-summary, cobertura, teamcity 

//dir - 커버리지를 생성할 폴더명


reporters:['spec', 'coverage']










728x90
반응형

'Programming language > javascript' 카테고리의 다른 글

nvm 설정.  (2) 2017.06.01
http-server 옵션  (0) 2017.06.01
Nodejs 한글 및 Express.js 안내~  (0) 2017.02.17
스프레드 연산자(spread operator)  (0) 2016.09.08
Template literal(템플릿 리터럴)  (0) 2016.09.08
댓글