Prisma와 MySQL을 사용하여 NestJS 기반 API를 개발 중입니다. 저는 테스트 기반 개발(TDD)을 처음 접했기 때문에 프로젝트에 테스트를 추가하고 싶습니다. UsersService
编写了测试,但我对如何测试相应的UsersController
感到困惑。此外,我对单元测试和集成测试之间的区别也不确定。下面,我将提供我已经编写的UsersService
、UsersController
에 성공했고 관련 코드 조각을 테스트했습니다.
프리즘 솔루션:
으아악UsersService(관련 부분):
으아악UsersController(관련 부분):
으아악구체적인 질문:
UsersController
,有哪些推荐的编写测试的方法?它们与为UsersService
? UsersService
작성하는 테스트는 단위 테스트로 간주되나요, 아니면 다른 유형의 테스트로 간주되나요?
단위 테스트를 사용하면 각 메서드를 독립적으로 테스트할 수 있습니다. 예를 들어 컨트롤러 메서드가 서비스 메서드를 호출하고 반환하는 경우 컨트롤러 메서드가 서비스 메서드를 호출하는지 여부를 단위 테스트에서 테스트해야 합니다.
통합 테스트는 일반적으로 모의 개체를 사용하지 않고 전체 코드를 테스트하고 실제 데이터베이스 및 기타 항목을 사용하여 애플리케이션의 전체 흐름을 테스트하는 것에 관한 것입니다. 예를 들어 로그인 및 로그아웃, 등록 및 프로필 생성 등과 같은 사용자 스토리를 테스트할 수 있습니다.
개인적으로는 TDD를 사용할 때 단위 테스트를 먼저 작성합니다. 나중에 필요하다고 생각되면 통합 테스트를 작성하겠습니다.