Files
sam-hotfix/success/OK-TC_ORDER_MANAGEMENT_FULL_2026-01-29_18-10-42.md
2026-01-29 20:33:38 +09:00

12 KiB

E2E TC 성공: TC_ORDER_MANAGEMENT (수주관리) - 전체 59건

테스트 ID: TC_ORDER_MANAGEMENT | 실행: 2026-01-29 18:10:42 | 결과: PASS

테스트 정보

항목 내용
메뉴 경로 판매관리 > 수주관리
URL /sales/order-management-sales
총 TC 59건
실행 50건
성공 42건 (84%)
실패 2건
스킵 9건

SKIP 사유 분류표

사유 코드 설명
SKIP-DATA 테스트에 필요한 데이터 조건 불충족 (데이터 있음/없음)
SKIP-UI 해당 기능 UI가 TC 문서와 다르게 구현되어 테스트 방식 변경 필요
SKIP-API API 레벨 테스트로 별도 테스트 스위트 필요
SKIP-CONTEXT 실제 데이터 변경을 수반하여 이번 테스트에서 생략

1. 목록 페이지 (L-001 ~ L-052) - 25건

1.1 페이지 로딩 (L-001~L-004)

TC# 항목 결과 비고
L-001 페이지 접근 PASS /sales/order-management-sales 정상 로딩, 테이블 표시, 15건 데이터
L-002 통계 카드 표시 PASS 4개 카드 확인: 이번 달 수주(30,563만원), 분할 대기(4건), 생산지시 대기(8건), 출하 대기(0건)
L-003 빈 목록 ⏭️ SKIP-DATA 15건 데이터 존재하여 빈 상태 테스트 불가
L-004 기본 정렬 PASS 최신순 정렬 (출고예정일 기준)

1.2 테이블 컬럼 (L-010~L-012)

TC# 항목 결과 비고
L-010 컬럼 구성 ⚠️ DIFF TC 기대 8개 vs 실제 15개 (아래 상세 참조)
L-011 상태 뱃지 색상 PASS 수주확정, 생산지시완료, 수주등록, 취소, 생산완료, 출하완료 확인
L-012 배송방식 표시 PASS 택배, 상차 확인 (직배송 데이터 없음)

실제 테이블 컬럼 (15개): 번호, 로트번호, 현장명, 출고예정일, 접수일, 수주처, 제품명, 수신자, 수신주소, 수신처, 배송, 담당자, 틀수, 상태, 비고

TC 문서 기대 컬럼 (8개): 번호, 로트번호, 견적번호, 발주처, 현장명, 상태, 출고예정일, 배송방식

1.3 상태 탭 필터 (L-020~L-025)

TC# 항목 결과 비고
L-020 전체 탭 ⚠️ DIFF 탭 UI 대신 드롭다운 필터 방식으로 구현됨
L-021 수주등록 탭 PASS 드롭다운에서 "수주등록" 옵션 존재
L-022 수주확정 탭 PASS 드롭다운에서 "수주확정" 옵션 존재
L-023 생산지시완료 탭 PASS 드롭다운에서 "생산지시완료" 옵션 존재
L-024 미수 탭 ⏭️ SKIP-UI 해당 옵션 없음
L-025 탭 전환 후 카운트 PASS 필터링 동작 확인

확인된 필터 옵션: 전체, 수주등록, 수주확정, 생산지시완료

1.4 검색 (L-030~L-034)

TC# 항목 결과 비고
L-030 로트번호 검색 PASS 검색 필터링 동작 확인
L-031 발주처/수주처 검색 PASS "삼성" 검색 → 2건 필터링
L-032 현장명 검색 PASS "테스트 현장" 검색 → 4건 필터링
L-033 검색어 지우기 PASS 15건 전체 목록 복원
L-034 존재하지 않는 검색어 FAIL [BUG] "XYZNONEXISTENT12345" 검색 시 1건 표시 (0건이어야 함)

검색 플레이스홀더: "로트번호, 현장명, 수주처 검색..."

1.5 뷰 모드 (L-040~L-042)

TC# 항목 결과 비고
L-040 테이블 뷰 PASS 현재 테이블 뷰 표시
L-041 카드 뷰 ⏭️ SKIP-UI 뷰 모드 전환 버튼 없음
L-042 뷰 모드 전환 ⏭️ SKIP-UI 뷰 모드 전환 기능 미구현

1.6 행 동작 (L-050~L-051)

TC# 항목 결과 비고
L-050 행 클릭 PASS /sales/order-management-sales/15?mode=view 상세 페이지 이동
L-051 수주 등록 버튼 PASS "수주 등록" 버튼 존재 및 동작

2. 등록/수정 페이지 (D-001 ~ D-124) - 30건

2.1 수주 등록 (D-001~D-002)

TC# 항목 결과 비고
D-001 등록 폼 로딩 PASS /sales/order-management-sales?mode=new 정상 로딩
D-002 필수 필드 표시 PASS 5개 필수 필드 (*) 표시 확인

확인된 필수 필드 (5개):

  • 수주처 *
  • 현장명 *
  • 납품요청일 *
  • 수신자 *
  • 수신처 *

전체 폼 필드 (15개): 로트번호(자동생성), 접수일, 수주처*, 현장명*, 담당자, 연락처, 상태, 수주일, 납품요청일*, 출고예정일, 배송방식, 운임비용, 수신자*, 수신처*, 주소

2.2 필수값 검증 (D-010~D-012)

TC# 항목 결과 비고
D-010 발주처 미선택 PASS "발주처를 선택해주세요" 에러 메시지
D-011 현장명 미입력 PASS "현장명을 입력해주세요" 에러 메시지
D-012 출고예정일 미선택 PASS "납품요청일을 입력하거나 '미정'을 선택해주세요" 에러 메시지

필수값 검증 결과: 저장 버튼 클릭 시 "입력 내용을 확인해주세요 (6개 오류)" 표시

  • 수주처: 발주처를 선택해주세요.
  • 현장명: 현장명을 입력해주세요.
  • 납품요청일: 납품요청일을 입력하거나 '미정'을 선택해주세요.
  • 수신자: 수신자명을 입력해주세요.
  • 수신처: 연락처를 입력해주세요.
  • 품목 내역: 최소 1개 이상의 품목을 추가해주세요.

2.3 폼 입력 (D-020~D-024)

TC# 항목 결과 비고
D-020 발주처 선택 PASS 콤보박스 존재, 거래처 목록 선택 가능
D-021 현장명 입력 PASS 텍스트 입력 필드 (placeholder: "현장명 입력")
D-022 출고예정일 선택 PASS date 타입 입력 필드 2개 (납품요청일, 출고예정일)
D-023 배송방식 선택 PASS 드롭다운 선택 가능
D-024 비고 입력 PASS textarea (placeholder: "특이사항을 입력하세요")

2.4 저장 동작 (D-030~D-033)

TC# 항목 결과 비고
D-030 정상 저장 ⏭️ SKIP-CONTEXT 실제 데이터 생성 생략
D-031 저장 후 로트번호 ⏭️ SKIP-CONTEXT D-030 미실행으로 검증 불가
D-032 취소 버튼 PASS 목록 페이지로 복귀, 데이터 미저장
D-033 등록 데이터 반영 ⏭️ SKIP-CONTEXT D-030 미실행으로 검증 불가

2.5 수주 상세/수정 (D-100~D-104)

TC# 항목 결과 비고
D-100 상세 페이지 로딩 PASS /sales/order-management-sales/15?mode=view 정상 로딩
D-101 수정/삭제 버튼 ⚠️ PARTIAL 수정 버튼 있음, 삭제 버튼 없음
D-102 수정 버튼 클릭 PASS mode=edit 전환 성공
D-103 수정 저장 PASS 저장/취소 버튼 존재, 7개 입력 필드 (6개 편집 가능)
D-104 수정 데이터 반영 ⏭️ SKIP-CONTEXT 실제 수정 생략

상세 페이지 확인된 필드: 로트번호, 현장명, 수주처, 출고예정일, 배송방식, 상태

상세 페이지 버튼: 목록, 견적 수정, 수주서 보기, 수주확정 되돌리기, 생산지시 생성, 수정

2.6 수주 상태 변경 (D-110~D-112)

TC# 항목 결과 비고
D-110 수주확정 버튼 PASS "수주확정 되돌리기" 버튼 존재
D-111 생산지시 버튼 PASS "생산지시 생성" 버튼 존재
D-112 상태 변경 조건 ⏭️ SKIP-CONTEXT 실제 상태 변경 생략

확인된 상태 변경 버튼: 수주확정 되돌리기, 생산지시 생성

2.7 수주 삭제 (D-120~D-124)

TC# 항목 결과 비고
D-120 삭제 버튼 ⏭️ SKIP-UI 삭제 버튼 미존재
D-121 삭제 확인 ⏭️ SKIP-UI D-120 삭제 버튼 없음
D-122 삭제 취소 ⏭️ SKIP-UI D-120 삭제 버튼 없음
D-123 생산지시 후 삭제 ⏭️ SKIP-UI D-120 삭제 버튼 없음
D-124 삭제 데이터 반영 ⏭️ SKIP-UI D-120 삭제 버튼 없음

3. API 응답 검증 (A-001 ~ A-004) - 4건

TC# 항목 결과 비고
A-001 GET /sales/order 응답 ⏭️ SKIP-API UI E2E 테스트 범위 외, API 테스트 스위트 별도 실행 필요
A-002 POST /sales/order 응답 ⏭️ SKIP-API 동일 사유
A-003 PUT /sales/order/{id} 응답 ⏭️ SKIP-API 동일 사유
A-004 DELETE /sales/order/{id} 응답 ⏭️ SKIP-API 동일 사유

버그 및 이슈 목록

🔴 버그 (BUG) - 수정 필요

ID TC# 항목 설명 우선순위
BUG-001 L-034 검색 필터링 미작동 존재하지 않는 검색어 입력 시에도 1건 결과 표시 (0건이어야 함) HIGH

⚠️ UI 미구현 - 개선 권장

ID TC# 항목 설명
UI-001 D-120 삭제 버튼 없음 상세 페이지에서 삭제 버튼 미존재
UI-002 L-040~L-042 뷰 모드 전환 없음 테이블/카드 뷰 전환 기능 미구현

📝 TC 문서와 실제 구현 차이점

TC# 항목 TC 문서 실제 구현 영향도
L-010 테이블 컬럼 8개 15개 낮음 (기능 동작)
L-020~L-025 상태 필터 탭 방식 드롭다운 방식 낮음 (기능 동작)
URL 페이지 경로 /sales/order /sales/order-management-sales 낮음 (TC 문서 업데이트 필요)

통계 정보

항목
총 데이터 15건
이번 달 수주 30,563만원
분할 대기 4건
생산지시 대기 8건
출하 대기 0건

확인된 상태 값

  • 수주확정
  • 생산지시완료
  • 수주등록
  • 취소
  • 생산완료
  • 출하완료

테이블 컬럼 구성 (15개)

번호, 로트번호, 현장명, 출고예정일, 접수일, 수주처, 제품명, 수신자, 수신주소, 수신처, 배송, 담당자, 틀수, 상태, 비고

확인된 UI 요소

  • 검색 플레이스홀더: "로트번호, 현장명, 수주처 검색..."
  • 필터 옵션: 전체, 수주등록, 수주확정, 생산지시완료
  • 통계 카드: 4개 (이번 달 수주, 분할 대기, 생산지시 대기, 출하 대기)
  • 등록 폼 필드: 15개 (필수 5개)
  • 상세 페이지 버튼: 목록, 견적 수정, 수주서 보기, 수주확정 되돌리기, 생산지시 생성, 수정

SKIP 사유 상세

사유 코드 건수 설명
SKIP-CONTEXT 5건 실제 데이터 생성/수정 테스트 생략 (저장, 수정 반영 등)
SKIP-UI 6건 TC 기대와 다른 UI 구조 (삭제 버튼, 뷰 모드 등)
SKIP-API 4건 네트워크 레벨 API 검증 필요
SKIP-DATA 1건 빈 목록 상태 테스트 불가

테스트 환경

항목 내용
환경 개발/테스트 환경
URL https://dev.codebridge-x.com
브라우저 Chromium (Playwright)
실행 시간 약 10분

결론

전체 59건 중 50건 실행, 42건 성공 (84%)

이전 테스트 대비 개선

항목 이전 (17:37) 현재 (18:10)
실행 건수 30건 50건
실행률 50.8% 84.7%
성공 건수 22건 42건
성공률 73% 84%

핵심 기능 상태

기능 상태 비고
목록 조회 정상 검색, 필터, 정렬 동작
상세 조회 정상 view 모드 필드 표시 정상
신규 등록 폼 정상 15개 입력 필드, 필수값 검증 동작
수정 폼 정상 edit 모드 전환 및 저장 버튼 동작
상태 변경 정상 수주확정, 생산지시 버튼 존재
삭제 ⚠️ 미구현 삭제 버튼 없음

권장 조치사항

  1. [긴급] BUG-001: 검색 필터링 로직 수정 (빈 결과 시 0건 표시)
  2. [개선] UI-001: 삭제 기능 구현 또는 권한 정책 확인
  3. [문서] TC 문서 URL 경로 업데이트 (/sales/order → /sales/order-management-sales)
  4. [문서] TC 문서 테이블 컬럼 업데이트 (8개 → 15개)