Mocha

Mocha 기본

Mocha로 Typescript 테스트하기

Mocha 에서 test/ 디렉토리란? (번역)

  • 참조링크 : The test/ directory, mochajs.org
  • 기본적으로, mocha는 glob "./test/*.{js,cjs,mjs}"를 찾기 때문에
    • 당신은 테스트를 test/ folder에 넣기를 원할 것이다
    • (잠깐만) glob 란? : glob, ZVON.org
      • 간단하게, wildcard 특수문자를 사용하여 만든 확장가능한 문자열, Unix Convention의 일종
  • 만약 subdirectory들 까지 테스트하려고 한다면,
    • --recursive option 을 추가한다
  • mocha가 테스트 찾는 위치를 설정하려고 한다면, 당신만의 glob을 넘겨줘도 된다
    1
    
    $ mocha --recursive "./spec/*.js"
    
  • 어떤 shell 들은 globstar(**) wildcard 를 이용하여 반복되는 matching을 제공한다
    • Bash >=4.3 은 globstar option 옵션을 제공하는데, ..
      • (잠깐만) globstar 옵션 번역 (위 링크에서 globstar 옵션 위치를 찾아야 함)
        • 설정되면, ** 패턴이 filename expansion context에서 사용되어 모든 파일에 매칭되며,
        • zero 개 이상의 directory와 subdirectories 에도 매칭된다.
        • 패턴에 /이 따라 붙게되면,
          • (파일은 제외하고) directories와 subdirectories에만 매칭된다
      • (해당 옵션은) --recursive 옵션을 설정한 것과 같은 결과를 내기 위해서 반드시 enable되어야 한다 ( ZSHFish 은 이것을 기본적으로 지원한다)
      • recusive matching이 enable 된 상태에서, 아래 실행 결과는--recursive 결과와 동일하다
        1
        
        $ mocha "./spec/**/*.js"
        
  • npm script에서는 glob에 항상 따옴표를 붙여야 한다
    • 이중 따옴표 (doubel quotes)을 사용한다면, UNIX shell이 glob의 확장을 수행할 것이다
    • 단일 따옴표 (single quotes)을 사용한다면, node-glob module이 확장을 수행할 것이다
  • glob을 사용할 때, 이 tutorial을 봐라