테스트 커버리지
전체 코드 중 테스트가 실행해 본 줄, 분기, 함수의 비율을 나타내는 지표이다. 커버리지가 높다고 버그가 없다는 뜻은 아니지만, 전혀 검증되지 않은 파일이나 위험한 분기를 찾는 데 도움이 된다. 바이브 코딩에서는 AI가 새 기능을 빠르게 추가하면서 테스트가 따라오지 못하는 경우가 많으므로, 커버리지 리포트를 보며 결제·권한·데이터 삭제처럼 실패 비용이 큰 경로부터 테스트 케이스를 보강하는 판단 기준으로 활용한다.
예시
AI가 관리자 설정 화면을 만든 뒤 커버리지 리포트에서 삭제 API의 실패 분기가 비어 있음을 확인한다. 곧바로 권한 없는 사용자의 삭제 요청과 잘못된 id 입력 테스트를 추가해 회귀 위험을 낮춘다.
참고
커버리지는 목표 숫자 자체보다 검증되지 않은 중요 경로를 찾는 신호로 해석해야 한다.
카테고리
테스트·디버깅
난이도
basic
태그
테스트커버리지 · 품질지표
함께 읽기
연관 용어
테스트·디버깅
단위 테스트
개별 함수, 메서드, 모듈이 예상대로 올바르게 동작하는지 검증하는 가장 작은 범위의 자동화된 테스트이다. '단위(unit)'는 테스트할 수 있는 가장 작은 코드 조각을 의미하며, 외부 의존성(데이터베이스, 네트워크, 파일 시스템)을 모킹(mocking)하여 해당 함수 자체의 로직만 순수하게 검증한다. 바이브 코딩에서 단위 테스트는 AI가 생성한 코드의 정확성을 보장하는 첫 번째 방어선이다. AI에게 'calculateTax 함수의 단위 테스트를 작성해줘'라고 하면 Jest, Vitest 등의 프레임워크로 다양한 입력 값과 경계 조건에 대한 테스트 코드를 생성한다. 그러나 AI가 생성한 테스트에는 주의가 필요하다: AI는 종종 정상 경로(happy path)만 테스트하고, 에지 케이스(경계 값, null, 빈 문자열, 음수 등), 에러 상황, 동시성 문제 등을 간과하는 경향이 있다. 따라서 AI가 생성한 테스트를 검토하고 에지 케이스를 추가하는 것이 인간의 중요한 역할이다. 에이전틱 엔지니어링에서는 Test Generator 에이전트가 자동으로 테스트를 생성하고, 품질 게이트에서 테스트 통과를 필수로 요구한다.
테스트·디버깅
통합 테스트
여러 모듈이나 서비스가 결합(integration)되어 함께 올바르게 동작하는지 검증하는 테스트이다. 단위 테스트가 개별 부품(함수)의 정상 동작을 확인한다면, 통합 테스트는 부품들이 조립되었을 때 전체가 기대한 대로 동작하는지 확인한다. 바이브 코딩에서 통합 테스트가 특히 중요한 이유: AI는 개별 함수 단위에서는 올바른 코드를 생성하더라도, 함수 간 데이터 전달, API와 데이터베이스 연동, 서비스 간 통신에서 미묘한 불일치를 만들어낼 수 있다. 예를 들어, 사용자 서비스가 반환하는 사용자 ID 형식(숫자 vs 문자열)과 결제 서비스가 기대하는 형식이 다른 경우, 단위 테스트는 각각 통과하지만 통합 테스트에서 실패한다. 테스트 범위 예시: API 엔드포인트 → 비즈니스 로직 → 데이터베이스 쿼리가 함께 동작하는지, 인증 미들웨어와 라우터가 올바르게 연결되는지, 외부 API 연동이 예상대로 동작하는지 등. Supertest(Node.js), pytest(Python) 등의 도구가 사용된다.
테스트·디버깅
엔드투엔드 테스트
실제 사용자의 관점에서 전체 애플리케이션 흐름을 처음(End)부터 끝(End)까지 시뮬레이션하여 검증하는 최상위 레벨의 테스트이다. 실제 브라우저를 자동 제어하여 클릭, 입력, 네비게이션 등의 사용자 행동을 재현하고, 전체 시스템(프론트엔드 → API → 데이터베이스 → 외부 서비스)이 통합적으로 올바르게 동작하는지 확인한다. 바이브 코딩에서 E2E 테스트는 '바이브 체크(Vibe Check)의 자동화된 버전'이라고 볼 수 있다. 인간이 수동으로 브라우저에서 확인하는 것을 자동화한 것이며, AI가 전체 앱을 생성한 후 E2E 테스트로 사용자 시나리오를 검증하면 바이브 체크보다 훨씬 체계적이다. 테스트 시나리오 예시: '회원가입 → 이메일 인증 → 로그인 → 상품 검색 → 장바구니 추가 → 결제 → 주문 확인' 전체 흐름. Playwright(Microsoft, 크로스 브라우저), Cypress(개발자 친화적) 등이 대표적 도구이며, AI에게 'Playwright로 로그인 → 대시보드 접근 E2E 테스트를 작성해줘'라고 요청할 수 있다.