Node.js와 브라우저에서 실행 가능한 JavaScript 테스트를 위한 프레임 워크입니다. npm install --global mocha를 통하여 전역으로 설치 가능합니다. Node.js에서 TDD(Test Driven Development)를 위해 이용하는 경우가 있습니다
TDD(Test Driven Development)
테스트 주도 개발라는 의미로 소프트웨어 개발 방법론 중 하나이며 반복 테스트를 이용한 방식으로 테스트 코드를 먼저 작성하고 테스트과 통과된 코드만을 실제 개발에 이용하는 방식입니다.
mocha
명령어로 터미널에서 실행가능합니다. mocha 명령어 실행 시 경로 내의 test.js 파일을 실행합니다. 혹은 test.js가 아닌 다른 파일을 mocha로 실행시키고 싶을 땐 mocha test2.js
이런 식으로 명령어를 작성해 주면 됩니다.
// test.js
var assert = require('assert');
describe('book', function () {
describe('page 1', function () {
it('1 page API test-A', function () {
assert.equal({page: 1}.page, 1);
});
it('1 page API test-B', function () {
assert.equal({page: 1}.page + 2, 3);
});
});
describe('page 2', function () {
it('2 page API test-A', function () {
assert.equal({page: 2}.page, 1);
});
});
});
/* result
book
page 1
✔ 1 page API test-A
✔ 1 page API test-B
page 2
1) 2 page API test-A
2 passing (6ms)
1 failing
1) book
page 2
2 page API test-A:
AssertionError [ERR_ASSERTION]: 2 == 1
+ expected - actual
-2
+1
at Context.<anonymous> (test.js:14:14)
at processImmediate (internal/timers.js:461:21)
*/
더 다양한 사용법은 mochajs.org 페이지를 참고해 주세요!
참고 페이지:
https://hanamon.kr/tdd란-테스트-주도-개발/: TDD 개발 방법론
https://mochajs.org/: mocha 페이지
수정할 부분이나 궁금하신게 있다면 언제나 질문해주세요!!!