Files
sam-hotfix/testcase/TC_DRAFT_BOX.md
2026-01-29 20:33:38 +09:00

10 KiB

TC - 기안함 (Draft Box)

페이지: https://dev.codebridge-x.com/approval/draft 작성일: 2026-01-29 대상: QC Playwright AI 테스트용


⚠️ 테스트 환경 안내

항목 내용
환경 유형 개발/테스트 환경 (Development Environment)
운영 환경 여부 아니오 - 운영 환경이 아닙니다
데이터 특성 테스트용 시드 데이터 및 개발 중 생성된 샘플 데이터
테스트 정책 CRUD 전체 테스트 가능 (생성, 수정, 삭제 포함)

테스트 실행 지침

  1. CRUD 테스트 허용: 이 환경은 개발/테스트 목적으로, 데이터 생성·수정·삭제를 포함한 전체 기능 테스트를 수행해야 합니다.

  2. 데이터 생성 테스트: 문서 작성 테스트 시 실제 데이터를 생성하여 기능 검증을 수행합니다.

  3. 데이터 삭제 테스트: 삭제 테스트는 테스트 중 생성한 데이터를 대상으로 실행합니다. 기존 시드 데이터는 보존합니다.

  4. 테스트 데이터 정리: 테스트 완료 후 생성된 테스트 데이터는 삭제하여 환경을 정리합니다.


1. 목록 페이지 (List View)

1.1 페이지 로딩

TC# 구분 테스트 항목 기대 결과
L-001 기본 페이지 접근 /approval/draft 정상 로딩, 테이블 표시
L-002 기본 페이지 제목 "기안함" + 설명 "작성한 결재 문서를 관리합니다"
L-003 기본 통계 카드 표시 "진행", "완료", "반려", "임시 저장" 4개 카드
L-004 기본 빈 목록 데이터 없을 때 "데이터가 없습니다" 메시지
L-005 기본 기본 정렬 최신순(created_at desc) 정렬

1.2 테이블 컬럼

TC# 구분 테스트 항목 기대 결과
L-010 기본 컬럼 구성 체크박스, 번호, 문서번호, 문서유형, 제목, 결재자, 기안일시, 상태, 작업
L-011 UI 문서유형 뱃지 품의서/지출결의서/예상지출내역 Badge(outline) 표시
L-012 UI 결재자 표시 단일: "홍길동", 복수: "홍길동 외 2명"
L-013 UI 상태 뱃지 색상 임시저장=회색, 결재대기=노랑, 진행중=파랑, 완료=초록, 반려=빨강

1.3 검색

TC# 구분 테스트 항목 기대 결과
L-020 기능 문서번호 검색 문서번호 입력 시 해당 문서만 필터링
L-021 기능 제목 검색 제목 입력 시 해당 문서만 필터링
L-022 기능 기안자 검색 기안자명 입력 시 해당 문서만 필터링
L-023 기능 검색어 지우기 검색어 삭제 시 전체 목록 복원
L-024 경계 존재하지 않는 검색어 빈 결과 + "데이터가 없습니다" 메시지
L-025 UI 검색 플레이스홀더 "문서번호, 제목, 기안자 검색..." 표시

1.4 필터

TC# 구분 테스트 항목 기대 결과
L-030 기능 필터 드롭다운 열기 전체, 임시저장, 결재대기, 진행중, 완료, 반려 옵션 표시
L-031 기능 전체 필터 모든 문서 표시
L-032 기능 임시저장 필터 임시저장 상태만 필터링
L-033 기능 결재대기 필터 결재대기 상태만 필터링
L-034 기능 진행중 필터 진행중 상태만 필터링
L-035 기능 완료 필터 완료 상태만 필터링
L-036 기능 반려 필터 반려 상태만 필터링

1.5 정렬

TC# 구분 테스트 항목 기대 결과
L-040 기능 정렬 드롭다운 열기 최신순, 오래된순, 제목 오름차순, 제목 내림차순 옵션
L-041 기능 최신순 정렬 created_at desc 정렬
L-042 기능 오래된순 정렬 created_at asc 정렬
L-043 기능 제목 오름차순 정렬 title asc 정렬
L-044 기능 제목 내림차순 정렬 title desc 정렬

1.6 체크박스 선택

TC# 구분 테스트 항목 기대 결과
L-050 기능 개별 체크박스 선택 해당 행 선택, 상신/삭제 버튼 표시
L-051 기능 전체 선택 현재 페이지 모든 행 선택
L-052 기능 전체 해제 모든 행 선택 해제, 버튼 숨김
L-053 UI 임시저장 선택 시 작업 컬럼에 수정/삭제 버튼 표시

1.7 행 동작

TC# 구분 테스트 항목 기대 결과
L-060 기능 임시저장 문서 클릭 문서 작성 페이지로 이동 (수정 모드)
L-061 기능 결재대기/진행중/완료 클릭 문서 상세 모달 열림
L-062 기능 문서 작성 버튼 클릭 시 새 문서 작성 페이지 이동

1.8 페이지네이션

TC# 구분 테스트 항목 기대 결과
L-070 기본 기본 페이지 크기 20건 표시
L-071 기능 페이지 이동 2페이지 클릭 시 해당 페이지 데이터 로드
L-072 UI 페이지 정보 현재 페이지/전체 페이지, 총 항목 수 표시

2. 문서 상세 모달

2.1 모달 열기

TC# 구분 테스트 항목 기대 결과
D-001 기능 문서 행 클릭 문서 상세 모달 열림
D-002 기본 모달 제목 "문서 상세"
D-003 API 상세 API 호출 GET /api/v1/approvals/{id} 호출

2.2 모달 내용

TC# 구분 테스트 항목 기대 결과
D-010 기본 기본 정보 표시 문서번호, 기안일시 표시
D-011 기본 결재자 목록 최대 3명 결재자 정보 + 상태 뱃지
D-012 UI 결재자 상태 색상 none=회색, pending=노랑, approved=초록, rejected=빨강

2.3 문서 유형별 내용

TC# 구분 테스트 항목 기대 결과
D-020 기능 품의서 내용 거래처, 거래처 지급일, 제목, 내용, 사유, 예상금액, 첨부파일
D-021 기능 지출결의서 내용 신청일, 지급일, 지출 내역, 카드 정보, 총액, 첨부파일
D-022 기능 예상지출내역 내용 예상지급일, 카테고리, 금액, 거래처, 계좌, 총 지출, 계좌 잔액, 최종 차액

2.4 모달 버튼

TC# 구분 테스트 항목 기대 결과
D-030 기능 수정 버튼 클릭 시 문서 작성 페이지로 이동 (수정 모드)
D-031 기능 복제 버튼 클릭 시 문서 작성 페이지로 이동 (복제 모드)
D-032 기능 상신 버튼 (임시저장) 임시저장 상태일 때만 표시, 결재 상신
D-033 기능 닫기 모달 닫힘, 목록 복귀

3. PDF 다운로드

TC# 구분 테스트 항목 기대 결과
P-001 기능 PDF 버튼 존재 모달 내 PDF 버튼 표시
P-002 기능 PDF 다운로드 실행 버튼 클릭 시 PDF 파일 다운로드
P-003 API PDF API 호출 GET /api/v1/approvals/{id}/pdf 호출
P-004 검증 ⚠️ PDF 파일 유효성 %PDF- 시그니처 확인, 1KB 이상

3.1 PDF 스타일 수동 확인 (Manual Verification)

TC# 구분 테스트 항목 기대 결과
P-010 수동 테이블 경계선 올바르게 표시
P-011 수동 한글 폰트 깨지지 않고 정상 표시
P-012 수동 숫자/금액 정렬 우측 정렬
P-013 수동 여백(margin/padding) 적절한 레이아웃
P-014 수동 헤더/푸터 각 페이지에 올바르게 표시
P-015 수동 로고/이미지 정상 표시
P-016 수동 페이지 나눔 적절한 위치에서 발생
P-017 수동 배경색/강조색 올바르게 적용
P-018 수동 텍스트 오버플로우 잘리거나 겹치지 않음
P-019 수동 결재선 정보 정상 표시

4. 결재 상신/삭제

4.1 상신

TC# 구분 테스트 항목 기대 결과
A-001 기능 상신 버튼 클릭 결재 상신 처리
A-002 API POST /api/v1/approvals/{id}/submit 상신 API 호출
A-003 비즈 상신 후 상태 변경 임시저장 → 결재대기
A-004 비즈 ⚠️ 통계 카드 업데이트 임시저장 -1, 진행 +1

4.2 삭제

TC# 구분 테스트 항목 기대 결과
A-010 기능 삭제 버튼 클릭 삭제 확인 다이얼로그 표시
A-011 기능 삭제 확인 문서 삭제 + 목록에서 제거
A-012 기능 삭제 취소 아무 변경 없음
A-013 비즈 임시저장만 삭제 가능 다른 상태는 삭제 불가

5. API 응답 검증

TC# 구분 테스트 항목 기대 결과
API-001 API GET /api/v1/approvals/drafts 페이지네이션 포함 목록 반환
API-002 API GET /api/v1/approvals/drafts/summary 통계 카드 데이터 반환
API-003 API GET /api/v1/approvals/{id} 문서 상세 반환 (content 포함)
API-004 API POST /api/v1/approvals/{id}/submit 상신 성공 응답
API-005 API DELETE /api/v1/approvals/{id} 삭제 성공 응답

6. 반응형 레이아웃

TC# 구분 테스트 항목 기대 결과
M-001 UI 모바일 카드 레이아웃 화면 크기에 따라 카드 형태 표시
M-002 UI 모바일 카드 필드 문서번호, 기안일자, 기안자, 결재자 표시
M-003 UI 모바일 액션 버튼 임시저장 선택 시 수정/삭제 버튼

TC 요약

카테고리 건수
목록 페이지 45건
문서 상세 모달 18건
PDF 다운로드 14건
결재 상신/삭제 8건
API 응답 검증 5건
반응형 레이아웃 3건
합계 93건