SYDESYDE
SYDESYDE
  • 피드
  • 쇼케이스
  • 블로그
  • 모임
SYDESYDE© 2026 SYDE. All rights reserved.
SYDE 소개문의하기
Kakao
SYDE 오픈채팅
Instagram
Instagram
Threads
Threads
커뮤니티 가이드라인협업문의이용약관개인정보처리방침
커뮤니티 가이드라인협업문의이용약관개인정보처리방침

© 2026 SYDE. All rights reserved.

새벽 3시에 결제까지 눌러보는 봇을 만들었는데, 첫날 6초 만에 죽었습니다

새벽 3시에 결제까지 눌러보는 봇을 만들었는데, 첫날 6초 만에 죽었습니다

fDo Young· 14시간 전· 해프닝·회고
목차
  • 무슨 일이 있었나요
  • 제가 만든 것
  • 범인은 물음표 두 개였습니다
  • 기억에 남는 것

목차

  • 무슨 일이 있었나요
  • 제가 만든 것
  • 범인은 물음표 두 개였습니다
  • 기억에 남는 것

두 번째 글입니다. 이번엔 인턴으로 일하는 회사에서 겪은 일이라 엄밀히 사이드프로젝트는 아닙니다. 다만 "혼자 만든 자동화가 아무도 모르게 죽어 있었다"는 이야기라, 혼자 서비스를 굴리시는 분들께 오히려 더 가까운 사고일 것 같아 가져왔습니다.

무슨 일이 있었나요

커머스 프론트엔드에 Playwright E2E를 붙이고 GitHub Actions로 자동화했습니다. 매일 새벽 3시에 브라우저 4종이 상품을 담고 주문서까지 들어가서 118개를 검사하는 구조였고, 머지하고 뿌듯하게 잤습니다.

다음 날 아침에 보니 6초 만에 빨갛게 죽어 있었습니다. 앱 버그였으면 차라리 나았을 텐데, 범인은 제가 방금 만든 파이프라인 본인이었습니다.

제가 만든 것

  • PR을 막는 smoke(크로미움 1종)와 새벽에 도는 full(크로미움 / WebKit / Pixel 7 / iPhone 14) 두 트랙으로 분리

  • Cypress 대신 Playwright 선택 — 가장 오래 괴롭힌 버그가 Safari 전용이었고, 병렬 실행이 무료라서

  • 공식 컨테이너 이미지로 CI 시간 12분 47초 → 2분 59초

  • 실제 결제가 나가지 않도록 PG 요청을 두 겹으로 차단하고, "PG 요청 0건"을 단언하는 테스트까지 추가

  • 테스트 짜다가 장바구니 레이스 컨디션과 접근성 누락, 앱 버그 두 개를 덤으로 발견

범인은 물음표 두 개였습니다

schedule 트리거에는 inputs가 없어서 BASE_URL에 빈 문자열이 들어왔고, ??는 빈 문자열을 그대로 통과시킵니다. 그래서 앱 서버가 아예 안 뜬 채로 테스트가 출발했습니다. 고친 건 ??를 ||로 바꾼 글자 하나입니다.

더 창피한 건 그다음이었습니다. 실패하면 Slack으로 알리는 스텝이 이미 있었는데, 웹훅을 Secrets에 등록하지 않아서 "웹훅이 없으면 조용히 성공"하도록 제가 짜둔 코드가 초록 체크를 찍고 끝나 있었습니다. 알림이 안 온 게 아니라, 알림이 안 왔다는 사실조차 안 알려준 겁니다.

기억에 남는 것

가져가실 건 세 줄입니다.

  1. 유닛 테스트가 전부 초록이어도 결제는 깨집니다. 그 층을 보는 건 E2E뿐입니다.

  2. 환경변수엔 ?? 말고 ||. CI가 빈 문자열을 주입하는 경로는 생각보다 많습니다.

  3. 알림 없는 야간 자동화는 그냥 안 도는 것과 같습니다. 오늘 한 번 일부러 깨뜨려서 알림이 진짜 오는지 확인해 보시길 권합니다.

Playwright와 Cypress를 비교한 근거, smoke/full을 나눈 기준, 하이드레이션 대기 같은 튜토리얼에 없는 함정들, 그리고 Slack 알림을 다시 설계한 과정까지 자세한 이야기는 velog에 정리했습니다.

👉 전체 글 보러 가기 (velog)
https://velog.io/@kdy9883/laywright-nightly-e2e

다음 글로 준비 중인 소프트뱅크 해커톤 후기는 10월 중순 이후에 올리겠습니다. ?? 때문에 당해보신 분, "알고 보니 계측이 꺼져 있었다" 류의 경험 있으신 분은 댓글로 나눠 주세요.

  • #트러블슈팅
  • #playwright
  • #e2e
  • #github-actions
  • #테스트자동화
8
D
Do Young프론트엔드 인턴 2곳 병행 중, 풀스택 지향

Do Young님의 다른 글

  • SYDE 첫 글 — 창의적종합설계대회 인기상, 스마트카트 앱을 혼자 만든 이야기3일 전

댓글 0

My avatar