assert

assert 모듈이 지원하는 함수 목록 (node REPL 에서 실행, ctrl+D: exit)

$node
> require('assert')
{ [Function: ok]
  fail: [Function: fail],
  AssertionError: [Function: AssertionError],
  ok: [Circular],
  equal: [Function: equal],
  notEqual: [Function: notEqual],
  deepEqual: [Function: deepEqual],
  deepStrictEqual: [Function: deepStrictEqual],
  notDeepEqual: [Function: notDeepEqual],
  notDeepStrictEqual: [Function: notDeepStrictEqual],
  strictEqual: [Function: strictEqual],
  notStrictEqual: [Function: notStrictEqual],
  throws: [Function: throws],
  doesNotThrow: [Function: doesNotThrow],
  ifError: [Function: ifError] }

기본예제

심화예제

심화예제 - 실행

(본 예제에서는 실패하는 코드를 의도적으로 숨겨놓음으로서 테스트 실패와 성공 시의 차이점을 알아본다.)

첫 번째 오류 발생

두 번째 오류 발생

오류 발생 지점

세 번째 오류 발생

오류 발생 지점

수정 후 다시 실행

테스트 성공. 하지만 아무런 메세지가 없다.

assert의 문제점

  • exception 이 발생할 경우 실행을 멈춤.

  • 테스트 블록이 실행되지 않을 경우에도 성공한 것처럼 보여짐.

    (13번째 줄 제거 후 성공으로 처리되는 문제)

Last updated

Was this helpful?