본문 바로가기
반응형

Back-End/🐱NestJS (TypeScript) log3

[NestJS 일기] 영화 api 만들기(3) - 유닛 테스팅 (unit testing) - jest 유닛(unit) 테스팅 유닛 테스트란 전체를 테스팅하지 않고 소스 코드의 특정 모듈이나 함수등이 의도된 대로 정확히 작동하는지 부분부분 검증하는 테스트 입니다. 테스트 spec 파일 컨트롤러나 서비스 생성할때 딸려서 나오는 spec 파일이 테스트 코드를 작성하는 파일입니다. movies.service.spec 테스트 파일 (기초 테스트) import { Test, TestingModule } from '@nestjs/testing'; import { MoviesService } from './movies.service'; describe('MoviesService', () => { let service: MoviesService; beforeEach(async () => { const module: Te.. 2022. 6. 7.
[NestJS 일기] 영화 api 만들기(2) - DTO를 이용해서 입력값 검증하기 DTO (Data Transfer Object) 란? DTO(Data Transfer Object) 는 계층 간 데이터 교환을 하기 위해 사용하는 객체로 , 상대방이 쓰레기 값이나 입력할수 없는 값을 넣을때 검증하는데 쓰일 수 있습니다. dto 폴더를 새로 만들고 , 새 영화를 post방식으로 등록할때(create) body에 대한 입력값 검증을 위해 CreateMovieDto 객체를 만들었습니다. 기존 영화의 정보를 바꿀때도 입력 값의 유효성을 검증하기 위해 UpdateMovieDto를 만들었습니다. validator , transformer 모듈 설치 class-validator는 유효값 검증해주는 모델이고, class-transformer는 입력값을 자동으로 형 변환 해주는 모듈입니다. transf.. 2022. 6. 3.
[NestJS 일기] 영화 api 만들기(1) - 설치 , 컨트롤러 , 서비스 ts파일 만들기 nodejs 환경에서 nest 설치 폴더에서 아래와 같이 터미널에 입력하면 nest를 설치하고 프로젝트를 생성할수 있습니다. $ npm i -g @nestjs/cli $ nest new project-name movie들을 등록하고 정보를 조회하는 백엔드 api를 만들기로 시작했습니다. $ nest g co ==> 컨트롤러 생성 $ nest g s ==> 서비스 생성 movie폴더 안에 movies.controller , movies.service를 생성했습니다. entities(객체) 폴더 안에는 Movie 객체를 생성했습니다. Movie 객체 export class Movie { id : number title : string year : number genres : string[] } movies .. 2022. 6. 3.