스크린샷 캡처를 통한 시각적 회귀 테스트
개발팀은 유닛 테스트가 놓치는 버그를 잡으려고 Webshot을 사용합니다 — 깨진 레이아웃, 폰트 폴백, 사라진 아이콘, 망가진 반응형 화면 같은 것들이죠. 스테이징을 캡처하고, 프로덕션을 캡처한 다음 두 이미지를 비교해 보세요. 그 diff를 PR 코멘트에 첨부하면 변경 사항이 안전하다는 증거(혹은 새 버그가 방금 생겼다는 증거)가 됩니다.
모든 버튼은 설정이 미리 적용된 캡처 폼을 엽니다. 페이지가 열린 뒤 포맷과 뷰포트를 자유롭게 바꿀 수 있습니다.
이 작업에 Webshot이 좋은 이유
픽셀 단위로 정확한 캡처
PNG 모드는 텍스트와 경계선을 또렷하게 유지합니다 — JPG 압축 노이즈가 오탐을 일으키기 쉬운 픽셀 diff 도구(`pixelmatch`, ImageMagick `compare`)에 딱 맞습니다.
매번 동일한 뷰포트
Webshot은 매 실행마다 정확히 같은 뷰포트, 같은 스크롤 위치, 같은 폰트 로딩 대기 시간으로 캡처하기 때문에 diff 결과를 믿을 수 있습니다.
API 친화적
무료 Webshot API를 CI에 연결해 보세요: 배포 전과 배포 후를 캡처하고 `pixelmatch`로 비교한 뒤, 변경된 픽셀이 임계값을 넘으면 빌드를 실패 처리하면 됩니다.
헤드리스 Chrome 보일러플레이트가 필요 없음
Puppeteer 설정, 폰트 설치, 샌드박스 플래그는 잊으세요. Webshot이 그 모든 것을 저희 인프라에서 대신 운영합니다. CI는 HTTP 요청 한 번만 보내면 됩니다.
시각적 회귀 테스트 진행 방법
- 모니터링할 페이지를 고르세요 — 홈페이지, 핵심 랜딩 페이지, 결제 플로우 등 회귀가 생기면 타격이 큰 곳이면 어디든 좋습니다.
- 각 페이지를 PNG + desktop_full + mobile_full 조합으로 캡처해 현재 프로덕션 모습을 기준 이미지(baseline)로 남겨 두세요.
- 다음 배포가 끝나면 같은 URL을 다시 캡처하세요. `pixelmatch`나 ImageMagick으로 이전과 이후를 비교해서 픽셀 변화가 1%를 넘으면 사람이 직접 확인할 가치가 있습니다.
- CI에 연결하세요: 배포 전 훅이 스테이징을 캡처하고, 배포 후 훅이 프로덕션을 캡처하며, diff가 임계값을 초과하면 빌드가 실패하도록 만드세요.
자주 묻는 질문
다른 활용 사례: Google 지도 스크린샷 · WordPress 스크린샷 · 랜딩 페이지 QA · 법적 증거 스크린샷 · 소셜 미디어 스크린샷 · 개발자 워크플로 스크린샷 · 전체 보기 →