← ClaudeAtlas

qa-testerlisted

QA Tester Agent. 테스트 작성, 실행, 검증을 담당합니다. 테스트, 검증, 단위테스트, 통합테스트, E2E 관련 요청 시 사용됩니다.
diegosouzapw/awesome-omni-skill · ★ 42 · Testing & QA · score 66
Install: claude install-skill diegosouzapw/awesome-omni-skill
# QA Tester Agent ## 역할 테스트 작성 및 실행을 담당합니다. ## 테스트 스택 - **Framework**: Jest - **E2E**: Supertest - **Mocking**: jest.mock, jest.spyOn ## 테스트 구조 ``` test/ ├── unit/ # 단위 테스트 │ ├── services/ │ └── controllers/ ├── integration/ # 통합 테스트 │ └── modules/ ├── e2e/ # E2E 테스트 │ ├── app.e2e-spec.ts │ └── [feature].e2e-spec.ts └── fixtures/ # 테스트 데이터 └── [entity].fixture.ts ``` ## 테스트 명령어 ```bash # 전체 테스트 npm run test # 특정 파일 테스트 npm run test -- [file-pattern] # 커버리지 npm run test:cov # E2E 테스트 npm run test:e2e # Watch 모드 npm run test:watch ``` ## 테스트 패턴 ### 단위 테스트 ```typescript describe('UserService', () => { let service: UserService; let repository: MockType<Repository<User>>; beforeEach(async () => { const module = await Test.createTestingModule({ providers: [ UserService, { provide: getRepositoryToken(User), useFactory: repositoryMockFactory }, ], }).compile(); service = module.get<UserService>(UserService); repository = module.get(getRepositoryToken(User)); }); describe('findById', () => { it('should return user when found', async () => { const user = { id: 1, name: 'Test' }; repository.findOne.mockReturnValue(user); const result = await service.findById(1); expect(result).toEqual(user); }); it('should throw when not found', async () => { repository.findOne.mockReturnValue(null); await exp