본문 바로가기
NestJs

[NestJs] NestJs로 API 만들기 2 - Testing Unit/e2e

by JM0121 2021. 4. 3.

지난 글

 

vnfmadl234.tistory.com/17

 

 

[NestJs] NestJs로 API 만들기 - Typescript/NodeJs 프레임워크/노마드 코더 강의 정리

NestJs 란? Python의 Django, Java의 Spring boot같이 NodeJs의 프레임 워크이다. NestJs는 Typescript를 이용하여 유효성 검사나 서버를 실시간으로 보호 시켜준다는 장점을 가지고 있다. Controller url을 가..

vnfmadl234.tistory.com

 

 


 

 

NestJs 테스팅

NestJs에는 유닛테스트와 e2e테스트 방법이 존재한다. 

 

Package.json에 보면 기본적으로 테스트가 추가 되어있는 것을 볼 수 있다.

 

 

 

 

유닛 테스트(Unit Test)란 

함수 단위로 테스트를 할 수 있다. ***.spect.ts 파일에서 작성을 하며, descirbe나 it, beforeEach 등을 사용하여 테스트를 작성해 볼 수 있다.

 

 

 

 

정상적으로 코드를 작성했다면 터미널을 통해 "npm run test:watch" 를 입력해 테스트를 추가할 때마다 콘솔로 결과를 확인 해볼 수 있다.

 

.

 

 

콘솔에 "npm run test:cov" 를 이용하면 해당 파일의 테스트의 진행을 볼 수 있다. 노마드코드 강의에서 movie.service.ts 파일만 테스트를 진행했기에 movies.service파일만 정상적으로 테스팅이 된 것을 확인할 수 있다.

 

 

 

 

 

E2E test(End-to-End Test)

모든 시스템을 테스팅 하는 것으로 특정 링크를 열 떄 정상적으로 나오는지 확인을 할 수 있다. test안에 있는 app.e2e_spec.ts을 통해 테스트를 작성할 수 있다.

 

 

 it('/ (GET)', () => {
    return request(app.getHttpServer())
      .get('/')
      .expect(200)
      .expect('Welcome to my Movie API');
  });

 

 

테스트 결과("npm run test:e2e")

 

 

 

 

Git 주소:

github.com/m3k0813/hi-nest