본문 바로가기

QA

📒 오늘 학습 정리 – QA Fundamental & 소프트웨어 테스팅 기초

📌 QA Fundamental

  • 정의
  • QA는 단순히 버그를 찾는 역할이 아니라, 제품의 품질과 신뢰성을 보장하는 전 과정.
  • 최우선 목표
    • 소프트웨어 결함을 줄이고 품질을 높인다.
    • 고객이 불편 없이 서비스를 사용할 수 있도록 한다.
    • 나아가 좋은 경험을 제공해 회사 이미지까지 긍정적으로 만든다.
  • QA vs 개발자 차이
    • 개발자: 기능을 만들고 정상 동작 확인
    • QA: 사용자 입장에서 결함을 찾아내고 예방 → 최종 품질 보증
    • QA는 제품이 나오기 전에 먼저 사용하는 최초의 사용자
  • 자동화 테스트 vs 수동 테스트
    • 자동화 테스트
      • ✅ 장점: 반복 작업 효율, 비용/인력 절감, 24시간 돌릴 수 있음
      • ❌ 단점: 러닝커브 높음, 언어/도구 학습 필요, 초기 구축 비용 큼
    • 수동 테스트
      • ✅ 장점: 코드 몰라도 가능, 요구사항/디자인만 있어도 테스트 가능
      • ❌ 단점: 인력/시간 소모 큼, 반복 작업 비효율
  • 좋은 QA 엔지니어 자질
    • 꼼꼼함: 테스트 케이스 설계 철저히
    • 창의성: 예상 못한 영역까지 커버
    • 커뮤니케이션 능력: 버그/개선사항을 기분 나쁘지 않게 명확히 전달
    • 도메인 지식: 다양한 IT 분야에 대한 얕고 넓은 이해

📌 소프트웨어 테스팅 기초

  • 테스팅 목적
    • 단순 버그 탐지 → ❌
    • 신뢰성·품질 보증, 고객 경험 보호 → ✅
  • 테스팅 종류
    • 기능 테스트: 로그인, 결제 등 정상 동작 확인
    • 비기능 테스트: 성능, 보안, 안정성
    • 회귀 테스트: 수정 후 다른 기능 영향 여부 확인
    • 자동화 테스트: 반복 테스트 자동화
  • 테스팅 프로세스 단계
    1. 기획 검토
    2. 구현 확인
    3. 테스트 케이스 작성/수행
    4. 버그 리포트
    5. 릴리즈 검증
    6. 회고 (KPT)
  • 당연품질 vs 매력품질
    • 당연품질: 기본적으로 반드시 충족해야 함 (예: 로그인, 회원가입)
    • 매력품질: 고객 감동/차별화 요소 (예: 갤럭시 폴드 같은 혁신적 기능)

'QA' 카테고리의 다른 글

Python Appium Android 테스트 하기 1  (1) 2025.11.09
Pytonh Appium 환경 설정  (0) 2025.11.09
QA 프로세스 흐름 정리  (0) 2025.09.30