콘텐츠로 이동

실제 플레이 세션 E2E 검수

이 문서는 기능이 존재하는지만 확인하지 않고, 플레이어가 실제로 누르는 키와 화면 전환 순서에서 한 판이 끝까지 이어지는지를 검사합니다. 23개 UI 상태, 23개 플레이어 인식 체크포인트와 5개 게임플레이 인과 흐름을 두어 단서가 읽히는지, 입력이 타격·처치·드랍까지 이어지는지, 성공·실패의 의미가 구분되는지를 판정합니다.

실행

PowerShell 실행 정책에 영향받지 않는 명령은 다음과 같습니다.

.\scripts\test-e2e.cmd

세부 계약 스모크와 성능 예산까지 한 번에 재검사하려면 다음 순서로 실행합니다.

.\scripts\test-e2e.cmd
.\scripts\test-game.cmd
powershell -NoProfile -ExecutionPolicy Bypass -File .\scripts\test-performance.ps1
.\scripts\wiki.cmd build

자동 플레이 목록

단계 실제 동작 합격 기준 2026-08-31
첫 진입 게임 시작 거점 HUD만 보이고 작전 설정은 닫힘 통과
입력 설정 KESC 키 배치 22개와 스킬 배치 3개를 구분해 표시하고 게임 정지, 종료 후 거점 HUD 복원 통과
거점 이동 오른쪽 이동 지속 입력 플레이어가 작전 게이트 범위까지 실제 이동 통과
가방 IESC 가방만 열리고 게임 정지, 종료 후 거점 HUD 복원 통과
장비 UEUESC 장비↔모듈·파츠 탭 전환 중 창이 닫히지 않음 통과
무기 Q 메인·보조 활성 슬롯 교체 통과
무기 인지 Q 전후 거점 안내 비교 현재 무기명이 실제 교체 결과에 맞게 바뀜 통과
작전 설정 게이트 F → 소형 카드 → 작전 투입 카드는 선택만 하고 브리핑·계약 갱신, 명시적 확정 뒤 전투 전환 통과
전투 HUD 전투 진입 좌측 임무, 플레이어 주변 HP·XP·장비·무기·세로 스킬, 모서리 대시·행동 도크와 우측 미니맵이 서로 비겹침 통과
점멸 피드백 실제 1 월드 이동, 에너지 감소, 쿨타임·재사용 문구를 함께 확인 통과
대시 피드백 이동 중 실제 Space 쿨타임·READY 전환과 함께 표현 강도 0.55+, 청록 궤적 2점+, 카메라 리드 8px+ 통과
기본기 전투 물리 마우스 1 홀드 발사체 증가→타격→치명 타격→처치→에너지/체력 드랍이 한 대상에서 연속 발생 통과
방 전투 일반 방 중앙 진입→전멸→보상 F 회수 room_entry 출처, 티어별 최소 무리 이상 생성·문 봉쇄, 전멸 뒤 문 해제·1~5개 박스·휴대 크레딧 증가 통과
조기 탈출 테스트 전투 방 완주 목표 시각 이전에도 탈출 잠금 해제와 조기 탈출 화면 안내 통과
확장 지도 워프 실제 M→후보 클릭 확장 레이아웃, 시작·끝·클리어 4방향 후보, 워프 후 자동 축소, 미클리어 일반 방 거부 통과
방·통로 안개 방→통로→같은 방 재진입 room→leaving_room→corridor→entering_room→room, 다른 방 차폐와 전체 미니맵 독립 유지 통과
중·대형 페이싱 가속 논리 시계 599초→600초 10분 전 탈출 잠금, 10분 도달 뒤 개방, 작전·HUD 유지 통과
내부 증강 레벨업 카드 3장 → 실제 2 두 번째 효과 적용, 방 무리 경험치로 여러 선택이 대기하면 순차 처리한 뒤 전투 복원 통과
작전 중 조회 I, U, E, ESC 읽기 화면을 열고 탭을 전환한 뒤 정상 복귀 통과
파밍 회수 오브젝트 앞 F 휴대 크레딧 내부 값과 화면 숫자가 함께 증가 통과
탈출 탈출 지점 F 카운트다운 방어전과 지키세요 안내 시작 통과
이탈·복귀 구역 밖 이동 후 복귀 남은 시간이 소모되지 않고 일시정지재개 문구 변경 통과
성공 정산 방어 완료 → Enter 생존·처치·정산을 읽고 거점 안내가 복원 통과
실패 정산 재투입 후 체력 0 → Enter 피격 반응, 생존·처치·분실을 읽고 거점 안내가 복원 통과

자동화는 game/tests/e2e_play_session_test.gd가 소유합니다. 키와 물리 마우스 이벤트는 실제 InputMap으로 전달하고, GameplayFlowJudge가 무기·타격·처치·드랍·방·페이싱·안개 스냅샷을 읽기 전용으로 대조합니다. 방 보상은 실제 박스 위치로 이동해 F 상호작용 계약을 호출하고 휴대 크레딧 전후를 비교합니다. 중·대형은 CI를 20분 점유하지 않도록 동일한 런타임 시계를 600초까지 가속하되 599초 잠금과 600초 개방을 나눠 확인합니다. 테스트 전용 저장 경로를 사용하므로 실제 플레이 데이터는 읽거나 지우지 않습니다.

UI 상태 판정 계약

실제 입력 순서마다 UIStateJudge가 현재 화면을 스냅샷으로 읽습니다. 단순 visible 값이 아니라 상위 노드까지 반영한 유효 표시 상태, 일시정지, 열린 모달 수, 장비 탭, 1280×720 기준 화면 경계와 HUD 교차 영역을 함께 판정합니다.

상태 반드시 표시 반드시 숨김 정지 추가 판정
거점 거점 HUD 작전 설정·전투 HUD·결과·모달 아니요 거점 HUD가 화면 안에 위치
K 키 설정 키 설정 거점·전투·다른 모달 모달 정확히 1개, 화면 안에 위치
I 가방 가방 거점·전투·다른 모달 모달 정확히 1개, 화면 안에 위치
U 장비 장비 편집 거점·전투·다른 모달 장비 탭 0, 모달 정확히 1개
E 모듈·파츠 장비 편집 거점·전투·다른 모달 개조 탭 1, 모달 정확히 1개
작전 설정 브리핑·계약·투입 확정 거점·전투·결과·모달 1180×660 패널과 양쪽 열·투입 버튼이 화면 안에 위치
전투 임무·플레이어 주변 생존·행동 도크·미니맵·스킬·대시 거점·설정·결과·모달 아니요 16개 벡터 아이콘, HUD 비겹침, 지속 점유율 20% 이하, M 지도는 요청 시만 확장
내부 증강 선택 세로 카드 3장 모든 전투 HUD·다른 모달 3장 모두 화면 안, 첫 카드 포커스, 계열·효과·키 안내 표시
전투 중 I/U/E 선택 모달 1개 모든 전투 HUD·다른 모달 닫으면 전투 HUD와 진행 상태 복원
성공·실패 결과 결과 화면 전투 HUD·미니맵·스킬·대시·상호작용 결과 화면만 화면 안에 위치

현재 E2E는 이 계약을 거점 시작부터 성공 복귀, 재투입, 사망 결과와 실패 복귀까지 23개 전환 지점에서 판정합니다. 전투 상태에서는 Presenter의 지속 위젯 면적과 미니맵 면적을 합산해 20%를 넘으면 실패합니다. 스모크 테스트는 별도로 800px 폭을 주입해 compact_edge·edge_compact 전환과 상세 카드 제거를 확인합니다.

사이버펑크 표현 계층도 같은 세션에서 검사합니다. 오버레이가 뷰포트 전체를 덮되 입력을 가로채지 않는지, 핵심 신호색이 정확히 #02e5e1인지, Feature Manifest에서 끄면 표현 노드만 빠지고 플레이 규칙은 유지되는지를 확인합니다.

플레이어 인식 계약

PlayerPerceptionJudge는 화면 안에서 실제로 보이는 Label·Button과 아이콘의 접근성 툴팁을 수집해 의미 단서를 검사합니다. 테스트가 내부 값만 보고 통과하지 않도록 입력 전후 키 배지·자원 숫자·월드 이동량뿐 아니라 대시의 표현 강도·궤적 표본·카메라 리드도 함께 증거로 전달합니다.

단위 체크포인트 예시 실패 예시
방향·선택 거점 목표, I/U/E/K, 장비·개조 정보 기능은 열리지만 무엇을 바꾸는 화면인지 설명 없음
결정·한눈 정보 작전 비용·위험·회수, 전투 HP·에너지·대시 투입 버튼은 있으나 비용·결과를 판단할 단서 없음
행동·자원 피드백 Q, 점멸, 대시, 자원 회수 내부 슬롯·쿨타임·크레딧만 바뀌고 보이는 문구는 그대로
상태·결말 탈출 시작/정지/재개, 성공/실패 카운트다운은 멈췄지만 이유가 없거나 성공·실패 손익이 구분되지 않음
연속성 모달 종료·정산 후 복귀 창은 닫혔지만 전투 HUD나 거점 방향 안내가 복구되지 않음

현재 23개 체크포인트, 9개 인식 단위와 5개 게임플레이 흐름을 자동 판정합니다. 전체 기능군의 자동·부분·수동 범위와 다음 검수 순서는 플레이어 인식 단위 E2E 감사에 정리합니다.

브라우저 육안 검수 목록

화면 사람이 확인할 항목 판정
시작 거점 한글, 안내 문구, 상단 HUD 겹침, 게이트 식별성 통과
I 가방 상세 패널·격자·용량 정보가 한 화면에 유지되는지 통과
U 장비 슬롯·선택 장비·후보 카드와 호환 요약이 오해 없이 읽히는지 통과
E 모듈·파츠 U 화면이 닫히지 않고 탭·제목·키 배지가 함께 바뀌는지 수정 후 통과
작전 브리핑 좌측 임무·회수와 우측 조건·위험·투입이 1280×720 안에서 균형 있게 읽히는지 통과
전투 HUD 좌측 임무, 플레이어 주변 생존 코어, 우측 세로 스킬과 모서리 행동 도크의 비겹침·20% 점유 상한 자동 통과
행동 직후 Q 현재 무기, 점멸 재사용·에너지, 대시 사용 상태가 입력 직후 구분되는지 자동 통과
내부 증강 3장 카드의 계열·이름·STACK·효과·선택 키가 같은 순서로 비교되는지 자동 통과
정산 성공은 정산, 실패는 분실을 명시하며 같은 복귀 입력을 안내하는지 자동 통과

브라우저는 키 이벤트의 물리 키 정보가 항상 동일하지 않습니다. 그러므로 화면 탭 선택은 물리 키 값을 다시 해석하지 않고 toggle_equipment, toggle_modification이라는 독립 InputMap Action을 소비합니다.

이번 검수에서 발견하고 바꾼 것

오작동처럼 보인 상태 원인 변경 후
U 화면에서 E를 누르면 창이 닫힘 U와 E가 같은 Action을 공유하고 물리 키 이벤트에 다시 의존 U·E Action을 분리하고 열린 창에서는 목표 탭 전환
장비 화면에 활성 스킬 2/3 표시 실제 발동 슬롯이 아니라 장비 태그 호환 수를 활성 수처럼 표현 장비 태그 호환 2/3으로 의미 명시
전투 안내가 1·2·3만 암시 현재 1~9 슬롯·좌클릭 기본기 계약보다 오래된 Scene 문구 런타임 안내를 LMB 기본기 · 1~9 스킬 기준으로 통일
성공·실패 결과 뒤로 전투 HUD가 남음 정산 오버레이만 켜고 전투 HUD·미니맵·스킬·대시를 종료하지 않음 정산 진입에서 활성 전투 UI를 한 번에 숨기고 결과 화면만 유지
상단 카드가 전장을 넓게 가림 모든 작전·생존·장비 정보를 1040px 상단 카드 한곳에 배치 임무는 좌측 상단, 생존·무기·스킬은 하단 중앙으로 나눠 중앙 전장 시야 확보
거점 Q 교체가 된 것인지 알 수 없음 교체 결과가 숨겨진 전투 HUD 상태 문구에만 기록 거점 조작 안내 끝에 현재 무기명을 표시하고 Q 전후 변화를 E2E로 비교
대시 HUD에 SHIFT / SPACE가 고정 표시 자유 키 설정과 무관한 예전 키 이름이 제목에 잔존 제목을 키 비종속 DASH · 회피로 바꾸고 실제 Space 입력 뒤 상태 변경 판정
장비·무기 상세가 전투 내내 시야를 차지 값이 변하지 않아도 상세 카드가 지속 표시 변경 직후 1.8초만 노출하고 Timer 뒤 자동 숨김
미니맵 제목·범례·그림자가 지도보다 큼 전체 지도와 장식이 하나의 고정 패널에 결합 전체 지도는 유지하고 헤더·범례·그림자를 제거, 900px 아래에서 추가 축약
실제 발사체 처치에서 Godot 물리 오류 물리 쿼리 콜백 안에서 경험치·자원 Area를 즉시 생성 처치·카운터는 즉시 반영하고 Pickup 생성만 안전한 다음 프레임으로 지연
E2E 확장 뒤 배포 검사가 이전 20개 인식 문자열을 기대 CI가 전체 성공 문장을 하나의 고정 문자열로 비교 핵심 성공·23개 인식·5개 인과 흐름을 분리 검증해 의미는 엄격히 유지하고 문구 확장에는 유연하게 변경
방 확보 문구를 자원 회수가 즉시 덮음 모든 전투 상태 문구가 같은 우선순위로 한 Label을 갱신 방 봉쇄·확보·보상에 우선순위와 유지시간을 주고 일반 자원 알림은 핵심 사건 뒤에 표시

사람 검수 원칙

  • 클릭·키 입력 한 번이 두 화면을 동시에 토글하지 않아야 합니다.
  • 모달이 열리면 뒤의 거점·전투 HUD가 시각적으로 경쟁하지 않아야 합니다.
  • 숫자는 내부 계산 명칭이 아니라 플레이어가 해석하는 의미로 표시합니다.
  • 내부 상태가 변해도 플레이어가 볼 수 있는 문구·수치·움직임 중 하나가 변하지 않으면 실패입니다.
  • 같은 동작은 데스크톱과 Web에서 동일한 InputMap Action을 사용합니다.
  • 한 판 성공뿐 아니라 사망 후 복귀와 재투입도 연속으로 검사합니다.

후속 검수

기본기→드랍, 방 봉쇄→보상, 중·대형 10분 논리 세션과 방·통로 안개 상태 전환은 자동 완료했습니다. 다음 우선순위는 실제 이동 경로로 중·대형 맵을 장시간 주행하는 실기 테스트, 다중 해상도 렌더링, 장비 클릭·재실행 지속성과 사운드 인지 계층입니다.

검색 별칭

E2E, 실제 플레이, 플레이 테스트, 플레이어 인식, UX E2E, 행동 피드백, UI 상태 판정, UI 상태 계약, 모달 배타성, HUD 겹침, 화면 경계, QA 체크리스트, 거점 작전 탈출, 성공 정산, 실패 정산, K 키 설정, U E 입력, 브라우저 입력, 사이버펑크 테마, 오버레이 입력 통과