본문 바로가기 메뉴 바로가기

cs09g 블로그

프로필사진
  • 글쓰기
  • 관리
  • 태그
  • 방명록
  • RSS

cs09g 블로그

검색하기 폼
  • 분류 전체보기 (58)
    • Git (9)
    • Open source (0)
      • Openlayers (0)
    • 프론트엔드 (16)
    • Javascript (15)
    • Mozilla (0)
    • 개발환경 (13)
      • Windows (4)
      • Linux (5)
      • Mac (3)
    • 생각 (3)
    • 여행 (1)
    • 엑셀 (0)
  • 방명록

testing (2)
[Testing] Karma 병렬 실행

Karma를 사용해 브라우저 테스트를 진행하다보니 메모리가 부족해서 중간에 테스팅이 멈추는 현상이 발생했다. 브라우저에서 테스팅이 종료되기 전까지는 메모리를 해제하지 않고 계속 잡고 있다보니 테스트 종료까지 6MB 정도의 메모리가 점유되었는데 개발 환경에서 굉장한 부담이 되었다. 브라우저 내에서 테스트가 종료되면 메모리가 해제된다는 점으로 볼 때 테스팅을 여러 브라우저 윈도우로 분할해 실행하면 순간 최대 메모리 점유율을 낮출 수 있다. karma-parallel 패키지를 사용하면 테스팅을 다중 브라우저 윈도우에서 분할해 실행할 수 있다. 사용법도 쉽다. 다음 명령을 통해 설치하고 npm install --save-dev karma-parallel 기존에 사용하던 karma 설정에 다음과 같이 추가하면 된..

Javascript 2019. 12. 6. 15:34
[Testing] Karma & Mocha & ES6+를 위한 coverage

Karma에는 coverage를 생성해주는 모듈이 존재한다. karam-coverage라는 것인데, Istanbul 라이브러리를 활용해 구현되었고 이것 자체는 기본적으로 ES6를 지원하지 않는다. ES6 코드에 대한 coverage 생성을 위해 다음과 같은 삽질을 진행했다. 1. mocha + instanbul 조합으로 karma-coverage 없이 해보자 문제1) 브라우저 API를 써야하는데 어떻게 하지? - 방법: jsdom 라이브러리를 활용한다. 문제2) 테스트에서 필요한 외부 리소스는 어떻게 불러오지? - 방법: jsdom에 옵션을 활용한다. {runScripts: "dangerously", resources: "usable"} 문제3) 외부 라이브러리에서 필요로하는 각종 브라우저 API는 어떻..

카테고리 없음 2019. 12. 5. 17:21
이전 1 다음
이전 다음
반응형
공지사항
최근에 올라온 글
  • 이 페이지의 스크립트에서⋯
  • subprocess가 죽지 않을 때
  • [typescript] enum과 cons⋯
  • curl --upload-file 파일⋯
최근에 달린 댓글
  • 이게 커뮤니티가 아니라 실무⋯
  • 어디서 주워들은 AOS라는 말⋯
Total
44,830
링크
  • Firefox
  • Mozilla Hacks Korea
TAG
  • 리소스모니터
  • abortcontroller
  • getter
  • Android
  • git-tag
  • nodejs
  • chrome
  • git-checkout
  • react
  • Safari
  • setter
  • fetch
  • bigsur
  • ubuntu
  • no_fcp
  • 블랙스크린
  • 크롬
  • ios
  • testing
  • readStream
  • bouncscroll
  • JavaScript
  • 사이트성능측정
  • GIT
  • writeStream
  • csv-parser
  • Windows
  • Karma
  • event
  • Mac
more

Blog is powered by Tistory / Designed by Tistory