모바일 앱 테스트: 샘플 테스트 사례 및 테스트 시나리오

학습자가 자주 묻는 질문은 모바일 앱을 테스트하는 방법입니다. 이 튜토리얼에서는 모바일 애플리케이션 테스트를 위한 샘플 테스트 시나리오/테스트 케이스를 제공합니다.

모바일 테스트 요구 사항에 따라 일부 또는 전체 테스트 사례를 실행할 수 있습니다. 테스트 케이스는 모바일 테스트 유형을 기반으로 구성됩니다.

모바일 애플리케이션의 기능 테스트

The 모바일 애플리케이션의 기능 테스트 사용자 상호 작용과 같은 모바일 애플리케이션의 기능을 테스트하고 사용자가 수행할 수 있는 트랜잭션을 테스트하는 프로세스입니다. 모바일 애플리케이션 기능 테스트의 주요 목적은 품질을 보장하고 지정된 기대치를 충족하며 위험이나 오류를 줄이고 고객 만족도를 높이는 것입니다.

기능 테스트와 관련된 다양한 요소는 다음과 같습니다.

  1. 비즈니스 기능 사용(뱅킹, 게임, 소셜 또는 비즈니스)에 따른 애플리케이션 유형
  2. Target 대상 유형(소비자, 기업, 교육)
  3. 애플리케이션 확산에 사용되는 배포 채널(예: Apple App Store, Google Play, 직접 배포)

모바일 애플리케이션의 기능 테스트

기능 테스트에서 가장 기본적인 테스트 시나리오는 다음과 같이 간주될 수 있습니다.

  1. 모든 필수 필수 필드가 요구대로 작동하는지 확인합니다.
  2. 필수 필드가 비필수 필드와 구별되는 방식으로 화면에 표시되는지 확인합니다.
  3. 애플리케이션이 시작/중지될 때마다 애플리케이션이 요구 사항에 따라 작동하는지 확인합니다.
  4. 전화가 올 때마다 애플리케이션이 최소화 모드로 전환되는지 확인합니다. 동일한 것을 확인하려면 두 번째 전화를 사용하여 장치에 전화해야 합니다.
  5. 앱이 실행될 때마다 휴대폰에서 SMS를 저장, 처리 및 수신할 수 있는지 확인합니다. 동일한 것을 검증하려면 두 번째 전화기를 사용하여 테스트 중인 장치와 테스트 중인 애플리케이션이 현재 실행 중인 장치로 SMS를 보내야 합니다.
  6. 필요할 때마다 장치가 필수 멀티태스킹 요구 사항을 수행할 수 있는지 확인합니다.
  7. 애플리케이션이 공유, 게시, 탐색 등과 같은 필수 소셜 네트워크 옵션을 허용하는지 확인합니다.
  8. 애플리케이션이 애플리케이션에서 요구하는 대로 Visa, Mastercard, Paypal 등과 같은 결제 대행사 거래를 지원하는지 확인합니다.
  9. 필요에 따라 애플리케이션에서 페이지 스크롤 시나리오가 활성화되어 있는지 확인합니다.
  10. 애플리케이션의 관련 모듈 간 탐색이 요구 사항에 맞는지 확인합니다.
  11. 잘림 오류가 절대적으로 합리적인 한도인지 확인합니다.
  12. 사용자가 "네트워크 오류입니다."와 같은 적절한 오류 메시지를 받았는지 확인하려면 네트워크 오류가 발생할 때마다 잠시 후에 시도해 보십시오.”
  13. 설치된 애플리케이션을 통해 다른 애플리케이션이 만족스럽게 작동할 수 있는지 확인하고 다른 애플리케이션의 메모리를 차지하지 않는지 확인합니다.
  14. 하드 리부팅이나 시스템 충돌이 발생한 경우 마지막 작업에서부터 애플리케이션이 재개되는지 확인합니다.
  15. 사용자에게 필요한 리소스가 있고 심각한 오류가 발생하지 않는 경우 응용 프로그램 설치가 원활하게 수행될 수 있는지 확인합니다.
  16. 애플리케이션이 요구 사항에 따라 자동 시작 기능을 수행하는지 확인합니다.
  17. 2g, 3g, 4g 등 모든 모바일 버전의 요구 사항에 따라 애플리케이션이 작동하는지 확인합니다.
  18. 수행하려면 Regression Testing 시스템이 변경된 후 기존 시스템 영역에서 새로운 소프트웨어 버그를 발견합니다. 또한 이전에 수행한 테스트를 다시 실행하여 변경 사항으로 인해 프로그램 동작이 변경되지 않았는지 확인합니다.
  19. 애플리케이션이 앱에 익숙하지 않은 사람들을 위해 사용 가능한 사용자 가이드를 제공하는지 확인하기 위해

성능 테스트 테스트 사례

이러한 유형의 테스트의 기본 목표는 수많은 사용자의 액세스 또는 데이터베이스 서버와 같은 주요 인프라 부분의 제거와 같은 특정 성능 요구 사항에서 애플리케이션이 허용 가능한 성능을 발휘하는지 확인하는 것입니다.

모바일 애플리케이션의 성능 테스트를 위한 일반적인 테스트 시나리오는 다음과 같습니다.

  1. 애플리케이션이 다양한 로드 조건에서 요구 사항에 따라 작동하는지 확인합니다.
  2. 현재 네트워크 범위가 최대, 평균 및 최소 사용자 수준에서 애플리케이션을 지원할 수 있는지 확인합니다.
  3. 기존 클라이언트-서버 구성 설정이 필요한 최적의 성능 수준을 제공하는지 확인합니다.
  4. 애플리케이션이 필요한 수용 수준에서 수행되는 것을 방해하는 다양한 애플리케이션 및 인프라 병목 현상을 식별합니다.
  5. 애플리케이션의 응답 시간이 요구 사항에 맞는지 확인합니다.
  6. 제품 및/또는 하드웨어를 평가하여 예상 로드 볼륨을 처리할 수 있는지 확인합니다.
  7. 배터리 수명이 예상 로드 볼륨 하에서 애플리케이션을 수행할 수 있는지 여부를 평가합니다.
  8. 네트워크가 2G/3G에서 WIFI로 변경되거나 그 반대로 변경될 때 애플리케이션 성능을 검증합니다.
  9. 필요한 각 CPU 주기를 검증하려면 최적화가 필요합니다.
  10. 배터리 소모, 메모리 누수, GPS와 같은 리소스, 카메라 성능이 필수 지침 내에 있는지 확인합니다.
  11. 사용자 로드가 엄격할 때마다 애플리케이션 수명을 검증합니다.
  12. 장치를 가지고 이동하면서 네트워크 성능을 검증합니다.
  13. 간헐적인 연결 단계만 필요한 경우 애플리케이션 성능을 검증합니다.

보안 테스트 테스트 케이스

보안 테스트 테스트 케이스

보안 테스트의 기본 목표는 애플리케이션의 데이터 및 네트워킹 보안 요구 사항이 지침에 따라 충족되는지 확인하는 것입니다.

모바일 애플리케이션의 보안을 점검하는 데 가장 중요한 부분은 다음과 같습니다.

  1. 응용 프로그램이 개인의 사용자 이름, 비밀번호 또는 신용 카드 번호를 추측하는 데 사용되는 시행 착오의 자동화된 프로세스인 무차별 대입 공격을 견딜 수 있는지 확인합니다.
  2. 응용 프로그램이 공격자가 적절한 인증 없이 중요한 콘텐츠나 기능에 액세스하는 것을 허용하지 않는지 확인합니다.
  3. 애플리케이션에 강력한 암호 보호 시스템이 있는지 확인하고 공격자가 다른 사용자의 암호를 얻거나 변경하거나 복구하는 것을 허용하지 않습니다.
  4. 애플리케이션의 세션 만료가 충분하지 않은지 확인합니다.
  5. 동적 종속성을 식별하고 공격자가 이러한 취약점에 액세스하지 못하도록 조치를 취합니다.
  6. 방지하기 위해 SQL 주입 관련 공격.
  7. 관리되지 않는 코드 시나리오를 식별하고 복구합니다.
  8. 인증서의 유효성이 검사되었는지 확인하기 위해 애플리케이션이 인증서 고정을 구현하는지 여부를 확인합니다.
  9. 서비스 거부 공격으로부터 애플리케이션과 네트워크를 보호합니다.
  10. 데이터 저장 및 데이터 유효성 검사 요구 사항을 분석합니다.
  11. 승인되지 않은 사용자가 원치 않는 정보에 액세스하는 것을 방지하기 위해 세션 관리를 활성화합니다.
  12. 암호화 코드가 손상되었는지 확인하고 복구되었는지 확인합니다.
  13. 비즈니스 로직 구현이 안전하고 외부 공격에 취약하지 않은지 검증합니다.
  14. 파일 시스템 상호 작용을 분석하려면 취약점을 확인하고 이러한 문제를 해결하십시오.
  15. 예를 들어 악성 iframe을 사용하여 애플리케이션의 기본 랜딩 페이지를 재구성하려고 시도하는 등 프로토콜 핸들러를 검증합니다.
  16. 악의적인 클라이언트 측 주입으로부터 보호합니다.
  17. 악의적인 런타임 주입으로부터 보호합니다.
  18. 파일 캐싱을 조사하고 이로 인한 악의적인 가능성을 방지합니다.
  19. 애플리케이션의 키보드 캐시에 안전하지 않은 데이터 저장을 방지합니다.
  20. 쿠키를 조사하고 쿠키의 악의적인 행위를 방지하기 위해.
  21. 데이터 보호 분석에 대한 정기적인 감사를 제공합니다.
  22. 사용자 정의 생성 파일을 조사하고 사용자 정의 생성 파일에서 악의적인 행위를 방지합니다.
  23. 버퍼 오버플로 및 메모리 손상 사례를 방지합니다.
  24. 다양한 데이터 스트림을 분석하고 이로 인한 취약점을 방지합니다.

사용성 테스트 테스트 케이스

사용성 테스트 테스트 케이스

모바일 애플리케이션의 사용성 테스트 프로세스는 기능이 많지만 느리고 어려운 애플리케이션보다 기능은 적고 빠르고 쉬운 단계 애플리케이션을 갖기 위해 수행됩니다. 주요 목표는 사용하기 쉽고 직관적이며 업계에서 널리 사용되는 인터페이스와 유사한 인터페이스를 만드는 것입니다.

  1. 버튼의 크기가 필요한지 확인하고 큰 손가락에 적합한지 확인합니다.
  2. 최종 사용자의 혼란을 피하기 위해 버튼이 화면의 동일한 섹션에 배치되도록 합니다.
  3. 아이콘이 자연스럽고 애플리케이션과 일치하는지 확인합니다.
  4. 동일한 기능을 가진 버튼도 동일한 색상을 갖도록 해야 합니다.
  5. 탭 확대/축소 기능에 대한 유효성 검사가 활성화되어야 합니다.
  6. 키보드 입력이 적절한 방식으로 최소화될 수 있는지 확인합니다.
  7. 애플리케이션이 잘못된 항목을 터치했을 때 허용되는 시간 내에 작업을 되돌리거나 실행 취소할 수 있는 방법을 제공하는지 확인합니다.
  8. 상황별 메뉴는 빠르게 사용해야 하기 때문에 과부하가 걸리지 않도록 하기 위함입니다.
  9. 사용자가 볼 수 있도록 텍스트를 단순하고 명확하게 유지합니다.
  10. 짧은 문장과 문단이 최종 사용자에게 읽히도록 보장합니다.
  11. 읽을 수 있을 만큼 글꼴 크기가 충분히 크고 너무 크거나 작지 않은지 확인하세요.
  12. 애플리케이션의 유효성을 검사하려면 사용자가 애플리케이션 성능에 도움이 되지 않을 수 있는 대량의 데이터 다운로드를 시작할 때마다 사용자에게 메시지를 표시합니다.
  13. 애플리케이션 종료가 다른 상태에서 수행되는지 확인하고 동일한 상태에서 다시 열리는지 확인합니다.
  14. 언어 번역 기능을 사용할 수 있을 때마다 모든 문자열이 적절한 언어로 변환되도록 합니다.
  15. 사용자 작업에 따라 애플리케이션 항목이 항상 동기화되도록 합니다.
  16. 최종 사용자에게 응용 프로그램 절차를 잘 모르는 최종 사용자가 응용 프로그램을 이해하고 작동할 수 있도록 돕는 사용자 매뉴얼을 제공해야 합니다.

인간만이 다른 사용자의 감성과 편안함을 이해할 수 있기 때문에 사용성 테스트는 일반적으로 수동 사용자에 의해 수행됩니다.

호환성 테스트 테스트 케이스

모바일 장치의 호환성 테스트는 모바일 장치의 크기, 해상도, 화면, 버전 및 하드웨어가 다르기 때문에 응용 프로그램이 원하는 대로 작동하는지 확인하기 위해 모든 장치에서 응용 프로그램을 테스트해야 하는지 확인하기 위해 수행됩니다.

호환성 테스트가 가장 중요한 영역은 다음과 같습니다.

  1. 애플리케이션의 사용자 인터페이스가 장치의 화면 크기에 따른 것인지 확인하기 위해 부분적으로 보이지 않거나 액세스할 수 없는 텍스트/컨트롤이 없습니다.
  2. 모든 애플리케이션 사용자가 텍스트를 읽을 수 있도록 합니다.
  3. 애플리케이션이 실행될 때마다 통화/알람 기능이 활성화되도록 합니다. 통화가 발생하면 애플리케이션이 최소화되거나 일시 중지되며, 통화가 중지될 때마다 애플리케이션이 재개됩니다.

복구성 테스트 테스트 케이스

  1. 충돌 복구 및 거래 중단
  2. 예상치 못한 중단/충돌 시나리오 이후 효과적인 애플리케이션 복구 상황을 검증합니다.
  3. 정전(예: 배터리가 방전되거나 장치가 갑자기 수동으로 종료되는 경우) 중에 애플리케이션이 트랜잭션을 처리하는 방법 확인
  4. 연결이 중단된 프로세스에 대한 유효성 검사를 수행하려면 연결 중단으로 인해 직접적인 영향을 받은 데이터를 복구하기 위해 시스템을 다시 설정해야 합니다. 권리를 활용 모바일 테스트 도구 원활한 복구 프로세스를 보장하는 데 도움이 될 수 있습니다.

중요 체크리스트

  1. 설치 테스트(응용 프로그램이 합리적인 시간과 필수 기준에 따라 설치될 수 있는지 여부)
  2. 제거 테스트(응용 프로그램이 합리적인 시간과 필수 기준에 따라 제거될 수 있는지 여부)
  3. 네트워크 테스트 사례(네트워크가 필요한 부하에서 작동하는지 여부, 테스트 절차 중에 네트워크가 필요한 모든 애플리케이션을 지원할 수 있는지 여부 검증)
  4. 매핑되지 않은 키 확인
  5. 애플리케이션 시작 화면 확인
  6. 인터럽트 및 네트워크 문제와 같은 기타 시간 동안 계속 키패드 입력
  7. 응용 프로그램 종료를 처리하는 방법
  8. 애플리케이션이 백그라운드에서 실행되는 동안의 충전기 효과
  9. 배터리 부족 및 고성능 요구
  10. 애플리케이션 실행 중 배터리 제거
  11. 애플리케이션 별 배터리 소모
  12. 애플리케이션 부작용 확인