-
Notifications
You must be signed in to change notification settings - Fork 55
Test
Limhojun edited this page Feb 28, 2017
·
11 revisions
mago3djs는 Jasmine (mocha + chai)을 사용하고 있습니다. Jasmine 자바스크립트을 테스트하기 위한 테스트 프레임워크입니다. Behavior-Driven Javascript 으로, 테스트 케이스를 쉽게 작성할 수 있게 api 가 구성되어 있습니다. Test Runner Karma을 사용하고 있습니다.
npm install mocha chai –g
npm install --save-dev mocha chai karma karma-browserify karma-chai karma-chrome-launcher karma-firefox-launcher karma-html-reporter karma-ie-launcher karma-mocha karma-mocha-reporter karma-phantomjs-launcher karma-spec-reporter
삭제는 매우 비효율적이고 주석은 귀찮은 작업입니다. Jasmine에서는 아주 편리한 방법을 제공하고있습니다. it이나 describe앞에 x 만 추가해주면 됩니다. (ex : xit, xdescribe)
Jasmine 으로 테스트 작성 시, Spy 로 쉽게 Mock 객체를 만들 수 있습니다. 실제 객체를 만들기엔 비용과 시간이 많이 들거나 의존성이 길게 걸쳐져 있어 제대로 구현하기 어려울 경우, 가짜 객체를 만들어 사용합니다.
- 테스트 작성을 위한 환경 구축이 어려운 경우
- 환경 구축을 위한 작업 시간이 많이 필요한 경우에 Mock 객체를 사용합니다.
- 특정 모듈을 각조 있지 않아서 테스트 환경을 구축하지 못할 때 또는 타 부서와의 협의나 정책이 필요한 경우에 사용합니다.
- 테스트가 특정 경우나 순간에 의존적인 경우
- 테스트 시간이 오래 걸리는 경우
- 개인 PC의 성능이나 서버의 성능문제로 오래 걸릴수 있는 경우 시간을 단축하기 위해 사용합니다.