분류 전체보기

    Jest로 단위 테스트 코드를 구현할 때 자주 사용되는 API

    Jest로 단위 테스트 코드를 구현할 때 자주 사용되는 API

    Jest로 단위 테스트 코드를 구현할 때 자주 사용되는 API describedescribe('User Service', () => { // 여기서 User Service와 관련된 테스트 케이스를 작성합니다.});테스트할 대상에 대한 설명을 작성하는 데 사용한다. 그룹화된 테스트 케이스를 설명하여 어떤 기능이나 모듈을 테스트하고 있는지 명확하게 나타낸다.   하나의 테스트 케이스를 test()라고 한다면 describe()는 여러 개의 테스트 케이스를 하나의 그룹으로 묶어주는 역할을 한다. itit('should create a new user', () => { // 새로운 사용자가 생성되는지 테스트하는 코드}); 개별적인 테스트 케이스를 나타내며, 특정 상황이나 조건에서 코드가 어떻게 동작하는지 테..

    Jest 란

    Jest 란

    Jest는 Facebook에서 개발한 JavaScript 테스트 프레임워크로, JavaScript 코드의 정확성을 검증할 수 있도록 테스트 코드를 작성하는 데 도움을 준다.  유닛 테스트: 개별 함수나 모듈을 테스트하여 특정 입력에 대해 예상한 출력이 나오는지 확인할 수 있다.스냅샷 테스트: UI 구성 요소의 출력이 이전 실행과 동일한지 확인한다. 이 기능은 특히 React 같은 UI 라이브러리에서 유용하다.비동기 코드 테스트: Promise나 async/await를 사용한 비동기 코드를 쉽게 테스트할 수 있다.모의 객체 (Mocking): 의존성을 모의 객체로 대체하여 테스트할 수 있다. 이는 외부 API 호출이나 데이터베이스 접근과 같은 테스트하기 어려운 부분을 모의하여 테스트할 수 있게 해준다.테스..

    REST와 GraphQL: Controller와 Resolver의 차이점 이해하기

    REST와 GraphQL: Controller와 Resolver의 차이점 이해하기

    REST와 GraphQL은 서버와 클라이언트 간의 데이터 통신을 위한 두 가지 주요 방식이다.각 방식은 NestJS에서 각각 Controller와 Resolver를 사용하여 구현된다.Resolver와 Controller는 목적과 사용되는 환경에서 차이가 있다. 둘 다 요청을 처리하고 응답을 반환하는 역할을 하지만, 사용하는 프로토콜과 구체적인 사용 사례에서 차이를 보인다.  REST와 Controller@Controller('users')export class UserController { constructor(private readonly userService: UserService) {} @Get() findAll(): Promise { return this.userService.findA..

    NestJS의 기본 모듈 구조

    NestJS의 기본 모듈 구조

    기본 모듈 구조기본적으로 모듈은 @Module() 데코레이터를 사용하여 정의되며, 아래와 같은 속성을 가진다. imports: 다른 모듈을 가져와 현재 모듈에서 사용한다.controllers: HTTP 요청을 처리하는 컨트롤러를 등록한다.providers: 서비스나 리포지토리 등의 종속성을 주입하는 제공자들을 정의한다. 즉 앱의 다른 부분에서 쉽게 사용할 수 있도록 한다.exports: 모듈 외부에서 사용될 수 있도록 제공자들을 내보낸다. import { Module } from '@nestjs/common';import { UsersController } from './users.controller';import { UsersService } from './users.service';@Module({ ..