웹 응용 프로그램과 데스크톱 응용 프로그램의 특징 및 차이점.

웹 응용 프로그램특징 브라우저를 통해 작동하므로, 운영체제에 구애받지 않는다.설치할 필요가 없고 url을 통해 언제든 접근 가능하다.업데이트가 서버에서 이루어져, 페이지를 새로 접근하면

rusharp.tistory.com

최근에 QA는 평가하는 사람이기 때문에 HW, SW 에 대한 특징을 많이 알아야 한다는 조언을 들은 적이 있다.

실제로 하이브리드, 네이티브앱 등에 대한 개념은 알고있지만, 비교적 어느 부분을

더 중점적으로 QA해야하는 지 등에 대해선 생각해본 적 없어서, 이번기회에 많이 찾아보았다.

 

아래는 네이티브앱과 웹앱, 하이브리드 앱에 대해 비교하고 QA로서 어느부분을 좀더 생각해야 하는지 작성해보았다.

참고로 웹 응용 프로그램과 데스크톱 응용 프로그램의 특징과 고려할 점은 위 링크를 참고하면 좋다.


  1. 네이티브 앱
    1. 특징
      • Android, IOS 등 플랫폼에 맞춰서 개발된다.
      • 성능이 뛰어나고 디바이스, 하드웨어와의 통합이 우수하다.
      • 앱스토어를 통해 배포된다.
    2. 장점
      • 성능이 높아 응답속도가 빠르다
      • 디바이스 전체에 접근 권한을 가질 수 있어, 카메라, GPS, 블루투스 등 스마트폰 자체 장치들 활용이 좋다.
    3. 단점
      • IOS, Android 를 따로 개발해야 하므로 개발 비용이 높다.
      • 앱스토어의 심사 과정이 필요하다.
  2. 웹 앱
    1. 특징
      • 브라우저 자체에서 실행되어 플랫폼으로부터 독립적이다.
      • 인터넷에 연결된 모든 디바이스에서 접근이 가능하다.
      • 앱스토어 없이 URL을 통해 배포된다.
    2. 장점
      • 개발 및 유지보수 비용이 낮다.
      • 별도의 앱 설치가 필요없이 플랫폼 독립적으로 동작한다.
      • 업데이트가 즉시 반영된다.
    3. 단점
      • 디바이스 하드웨어 접근이 제한적이라 카메라, 음성 인식 등의 기능을 활용 가능하다.
      • 인터넷 연결이 필요하다.
      • 네이티브 앱보다 성능이 낮다.
  3. 하이브리드 앱
    1. 특징
      • 네이티브 앱과 웹 앱의 장점을 결합.
      • 웹 기술을 사요애 개발되며, 네이티브 셀 안에서 실행된다.
      • 앱스토어를 통해 배포된다.
    2. 장점
      • 개발 비용이 네이티브 앱보다 낮다.
      • 하나의 코드베이스로 여러 플랫폼에서 실행이 가능하다.
      • 디바이스 자체 기능을 활용할 수 있다.
    3. 단점
      • 네이티브 앱보다 성능이 낮다.
      • 네이티브 앱에 비해 UI/UX 구현이 제한적이다.
      • IOS 의 Face ID 와 같은 플랫폼 별 특화 기능 지원이 제한적이다.
  4. QA 고려사항
    1. 공통적인 고려 사항 
      • 호환성 테스트 : 다양한 디바이스, 브라우저, OS 버전에서의 호환성을 확인한다.
      • 성능 테스트 : 응답 속도 및 메모리 사용량, 배터리 소모 등을 측정한다.
      • 보안 테스트 : 데이터 보호, 인증, 권한 관리 등을 점검한다.
      • UI/UX 테스트 : 사용자 경험과 그에 따른 인터페이스에 대해 점검한다.
      • 성능 테스트 : 네트워크 상태 및 메모리에 따른 성능 테스트가 필요하다.
    2. 네이티브 앱
      • 각각 플랫폼(Android, IOS) 마다 별도로 테스트를 진행해야 한다.
      • 카메라, GPS 등의 하드웨어를 사용하는 경우 통합 테스트를 진행한다.
      • 앱스토어 가이드라인을 준수하는 지 확인한다.
    3. 웹 앱
      • 다양한 브라우저(Chrome, Firefox, Edge 등) 에서 테스트를 진행해야 한다.
      • 웹 보안과 관련된 취약점에 대한 테스트를 진행한다.
      • 반응형 디자인 테스트의 경우, 화면 크기에 따른 레이아웃이 깨지거나 잘리는 것이 없는지 확인한다.
    4. 하이브리드 앱
      • 네이티브 앱에 비해 반응속도가 느릴 수 있기 때문에 성능 테스트를 신경쓴다.
      • 웹뷰와 네이티브 코드 간의 데이터 교환이 원활한지 확인한다.
      • 그 외 네이티브 앱과 웹 앱에서 해야하는 테스트를 함께 진행해야 한다.