본문 바로가기

IT 기타

[펌] 프로덕션 테스트에서 흔히 범하는 실수들

반응형

아래 블로그의 글을 보고 스타트업의 슬픔?을 봤다.

 

프로덕션 테스트에서 흔히 범하는 실수들
Son, Youngsu (손영수)  – arload@live.com

https://architecture101.blog/2024/08/11/commonmistakesbeforefinaluserdeployment/

 

프로덕션 테스트에서 흔히 범하는 실수들

이미지 원본 – 너무 공감이 가는 자료라서, 읽어보시길 바랍니다. 1. 경험이 쌓여야 좋은 판단을 할수 있음. 좋은 판단은 (잘못된 판단을 했던) 경험에서 옵니다. 프로덕션에서 테스트를 할 때

architecture101.blog

 

1. 경험이 쌓여야 좋은 판단을 할수 있음.

  • 좋은 판단은 (잘못된 판단을 했던) 경험에서 옵니다.
  • 프로덕션에서 테스트를 할 때 사용자 맥락을 고려하지 않는 것보다, 더 나쁜 것은 아예 프로덕션 환경에서 테스트하지 않는 것입니다.

2. 최종 사용자 배포 전 흔히 저지르는 실수들:

이상적인 해피케이스에만 집중:

  • 문제: 실패할 가능성이 있는 상황을 무시하고, 이상적인 경로만 테스트함.
  • 예시: 메시징 앱이 네트워크 연결이 불안정할 때 작동하지 않아, 프로덕션에서 메시지가 전송되지 않음.

 부족한 사용자 수용 테스트(UAT):

  • 문제: 실제 사용자들을 테스트에 충분히 참여시키지 않음.
  • 예시: 테스트 중 사용자 피드백을 반영하지 않아, 최종 인터페이스가 사용자들에게 혼란을 줌.

 불완전한 테스트 범위:

  • 문제: 중요한 예외 상황을 테스트에서 놓침.
  • 예시: 유효하지 않은 신용카드 입력에 대한 테스트가 누락되어, 프로덕션에서 결제가 실패함.

 비현실적인 테스트 데이터:

  • 문제: 테스트가 실제 환경을 반영하지 않음.
  • 예시: 개발 중 특수 문자를 테스트하지 않아, 사용자가 이를 입력했을 때 프로덕션에서 앱이 충돌함.

 환경 차이:

  • 문제: 프로덕션과 다른 환경에서 테스트를 진행함.
  • 예시: 웹 애플리케이션이 테스트 환경에서는 잘 작동하지만, 실제 환경에서는 네트워크 속도가 느려 타임아웃이 발생함.

 통합 테스트 부족:

  •  문제: 구성 요소 간의 상호작용 문제를 간과함.
  •  예시: 프로덕션에서 API가 기존 데이터베이스와의 데이터 구조 불일치로 인해 실패함.

 비기능적 테스트 생략:

  •  문제: 성능과 보안 테스트를 충분히 하지 않음.
  •  예시: 프로모션 후 예상치 못한 트래픽 증가로 웹사이트가 다운됨.

3. 기타 사례:

  • 예상치 못한 충돌: 사소한 변경이 프로덕션에서 시스템 전체의 큰 충돌을 유발함.
  • 보안 취약점: 배포 후 패치되지 않은 보안 취약점이 악용됨.
  • 데이터 손상: 테스트되지 않은 예외 상황이 라이브 거래 중 데이터베이스 손상을 일으킴.
  • 서버 과부하: 부하 테스트를 충분히 하지 않아 예상치 못한 다운타임이 발생함.
  • 사용자 이탈: 출시 후 성능 문제를 해결하지 못해 사용자가 앱을 떠남.

 

 

반응형