날쌘 개발자

서비스 배포(1) - 배포 준비, QA테스팅(1) 본문

web/챌린지

서비스 배포(1) - 배포 준비, QA테스팅(1)

훈식이 2023. 3. 14. 20:46
728x90

패스트캠퍼스 환급챌린지

23일차 화이팅!!

~


구현단계는 잠시 건너뛰고 나중에 직접 따라해보기로 하고,
먼저 이론부분인 서비스 배포 단계 후, 디벨롭단계를 공부 한 후에 차근차근 구현해보도록 하겠다.


배포 프로세스 만들기

환경 분리

Main
  • 외부 사용자에게 노출될 실제 production 환경
  • main 브랜치와 연동
  • 독립된 데이터베이스와 서버와 호스팅
Staging
  • Production과 비슷한 테스트 환경
  • staging 브랜치와 연동
  • 독립된 데이터베이스와 서버와 호스팅

배포 프로세스 구축하기

  1. Staging 에서 테스팅
  2. Main (Prod)에 배포할 준비가 되었다면,
    1. Git: main 브랜치에 푸시
    2. Amplify에 의해 배포 시작 (provision code -> build -> deploy -> verify)

CI/CD 소개

  • Continuous Integration / Continuous Delivery 의 약자
  • 지속적 통합 - 메인 브랜치에 여러 작은 변화들을 자주 mergin 하는 것
  • 지속적 배포 - 언제든지 빠르고 자주 안정적인 소프트웨어가 배포될 수 있는 환경

배포 파이프라인

  • 프로덕션에 서비스를 안정적으로 빠르게 배포 하기 위해 거쳐야 할 단계들, 프로세스들을 자동화 한 것

QA테스팅

크로스 브라우저 테스팅

  • 웹 애플리케이션이 여러 기기의 여러 종류의 브라우저 내에서 정상적으로 동작 하는지 테스팅 하는 것
  • 소프트웨어의 퀄리티를 보장하기 위한 방법 중 하나

왜 중요할까?

  • 브라우저 별로,
  • 브라우저의 버전 별로,
  • 디바이스 별로,
  • 작성한 코드가 동일하게 동작할 것이라는 보장 X
  • 브라우저 별로 같은 코드를 다른 방법으로 렌더링 하기 때문
  • 지원해야 할 브라우저에서 기능이 정상적으로 동작하지 않으면 결국 사용자는 떠날 것. 여러 브라우저 / 기기 내에서 기능이 일정하게 동작하면서 동일한 경험을 제공해야 함.

언제 할까?

  • 개발하는 중간중간
  • 서비스 개발이 끝나고 배포하기 전
  • 지원하는 브라우저에서 모두 정상 동작 하는지 확인하기 위한 QA 단계에서

누가 할까?

  • QA 조직이 있는 경우 -> QA 테스터
  • 없는 경우 -> 개발자

방법은?

  • 기능 테스트
  • 디자인 테스트
    • 반응형 테스트
      • 스크린 사이즈 조정
      • 모바일 버전 vs 데스크탑 버전
  • 수동 / 자동
    • 서비스에서 지원하는 모든 브라우저에서 수동으로 하나하나 테스트를 하며 비교해 보기에는 많은 시간과 노력이 필요
    • 자동화 라는 것은 배포 파이프 라인 안에 넣어 두던지, end-to-end 테스트 코드 등을 이용해 지원해야 할 모든 브라우저에서 테스트해야 할 모든 기능을 자동화 하는 것

23일차 인증


본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

 

http://bit.ly/3Y34pE0

 

패스트캠퍼스 [직장인 실무교육]

프로그래밍, 영상편집, UX/UI, 마케팅, 데이터 분석, 엑셀강의, The RED, 국비지원, 기업교육, 서비스 제공.

fastcampus.co.kr

 

728x90