Android 테스트의 기본사항 알아보기

1. 시작하기 전에

이 Codelab에서는 Android 앱 테스트와 Android 앱에 자동화된 테스트를 적용하는 방법에 관해 알아봅니다.

기본 요건

  • Android 스튜디오에서 프로젝트 디렉터리로 이동하는 방법에 관한 기본 지식

학습할 내용

  • 테스트의 정의
  • 자동화된 테스트의 정의
  • 단위 및 계측 테스트의 정의
  • Android 프로젝트 내 단위 및 계측 테스트 파일의 위치

필요한 항목

  • Android 스튜디오가 설치된 컴퓨터
  • 이 개발자 과정의 이전 Codelab에서 만든 프로젝트

2. 테스트란?

소프트웨어 관점에서 테스트는 소프트웨어가 올바르게 작동하는지 확인하는 구조화된 방법입니다. 자동화된 테스트는 개발자가 작성한 코드의 또 다른 부분이 올바르게 작동하는지 확인하는 실제 코드입니다.

테스트 소프트웨어는 코드를 공개하기 전에 버그를 제거할 수 있어 유용합니다. 이는 긍정적인 사용자 경험을 제공하는 데 필수적입니다.

수동 테스트는 대부분 계속 사용할 수 있지만, Android의 테스트가 자동화되는 경우도 많습니다. Kotlin으로 배우는 Android 기본사항 과정에서는 앱 코드와 앱 자체의 기능적 요구사항을 확인하는 자동화된 테스트를 중점적으로 다룹니다. 이 Codelab에서는 Android에서 테스트하는 데 필요한 가장 기본적인 사항을 알아봅니다. 이후 Codelab에서는 Android 앱 테스트를 위한 고급 사례를 알아봅니다.

Android 개발 및 Android 앱 테스트에 점차 익숙해지면 앱 코드와 함께 테스트도 주기적으로 작성하는 것이 좋습니다. 앱에 새 기능을 만들 때마다 테스트를 만들면 추후 앱이 성장할 때의 워크로드가 줄어듭니다. 또한, 앱을 수동으로 테스트하느라 많은 시간을 소비할 필요 없이 앱이 적절하게 작동하는지 확인할 수 있는 편리한 방법을 제공합니다.

3. 자동화된 테스트 소개

자동화된 테스트는 개발자가 작성한 특정 코드가 적절하게 작동하는지 확인하고 프로젝트가 계속 성장하고 변화해도 올바르게 작동하는지 확인하는 코드입니다. 자동화된 테스트는 모든 소프트웨어 개발에서 필수적이며 Android 개발도 예외가 아닙니다. 이에 자동 테스트를 소개하고자 합니다. Android 앱을 처음 만들었을 때 기본 활동이 main 디렉터리의 하위 폴더에 포함된다는 사실을 확인했을 것입니다. src 디렉터리에서 testandroidTest 디렉터리를 보았을 수도 있습니다. 이 두 디렉터리는 테스트 코드를 작성하는 곳입니다. Android 개발에는 단위 테스트와 계측 테스트, 두 가지 유형의 자동화된 테스트가 있습니다. 두 디렉터리는 이 두 개의 테스트 카테고리를 나타냅니다.

59a85b0d54051f31.png

단위 테스트 코드 찾기

Android의 로컬 테스트는 test 디렉터리에 있으며 일반적으로 단위 테스트입니다. 단위 테스트는 작은 코드 조각을 직접 테스트하여 기능이 제대로 작동하는지 확인합니다. 단위 테스트를 사용하여 함수, 클래스, 속성을 테스트할 수 있습니다. 로컬 테스트는 자바 가상 머신에서 실행되므로 기기나 에뮬레이터가 필요하지 않은 개발 환경에서 실행됩니다. 즉, 단위 테스트는 개발자 컴퓨터에서 실행됩니다. Android 스튜디오에서는 로컬 테스트를 자동으로 실행할 수 있습니다.

Android 스튜디오는 개발자가 새 프로젝트를 만들 때마다 간단한 단위 테스트와 계측 테스트를 자동으로 생성합니다. 이러한 테스트는 실제로 관련 작업을 실행하지 않으며 자리표시자 역할만 합니다. 지금은 테스트 파일을 찾을 수 있는 위치에 관해서만 알아보겠습니다. 이후 개발자 과정에서 생성된 테스트의 콘텐츠를 자세히 알아봅니다.

단위 테스트 코드를 찾으려면 다음 단계를 따르세요.

  1. 이전 프로젝트에서 Birthday Card 앱을 엽니다.
  2. 필요한 경우 탐색 메뉴에서 Android를 선택합니다.
  3. app > java > com.example.happybirthday (test) > ExampleUnitTest를 클릭합니다.

66ea4f322cab41f5.png

계측 테스트 코드 찾기

Android 개발에서 계측 테스트는 일반적으로 사용자 인터페이스 테스트(UI 테스트)를 나타내는 용어입니다. 계측 테스트를 사용하면 활동과 프래그먼트 수명 주기 및 플랫폼 API와 서비스에 종속된 앱 일부를 테스트할 수 있습니다.

단위 테스트와 달리 UI 테스트는 코드를 직접 테스트하지 않습니다. 대신, 사용자 인터페이스를 테스트하여 올바른 UI 구성요소가 표시되고 작업이 UI 내에서 실행될 때 사용자 인터페이스가 올바르게 작동하는지 확인합니다. 또 다른 차이점으로 모든 계측 테스트는 실제 기기 또는 에뮬레이터에서 실행해야 한다는 점을 들 수 있습니다. 이전 개발자 과정에서 에뮬레이터를 설정했으므로 이 단계는 이미 처리되어 있습니다.

Android에서 계측 테스트를 실행하면 실제로 테스트 코드는 일반 Android 앱과 마찬가지로 자체 APK에 빌드됩니다. APK는 기기나 에뮬레이터에서 앱을 실행하는 데 필요한 파일과 모든 코드를 포함하는 압축 파일입니다. 이 테스트 APK는 일반 앱 APK와 함께 기기 또는 에뮬레이터에 설치됩니다. 그런 다음 테스트 APK는 앱 APK를 위한 테스트를 실행합니다.

테스트를 실행하기 전에 코드가 하는 작업을 살펴보세요.

계측 테스트 코드를 찾으려면 다음 단계를 따르세요.

  1. Android 프로젝트 뷰에 있다면 app > java > com.example.happybirthday (androidTest) > ExampleInstrumentedTest를 클릭합니다.

b5cff05a589025b1.png

  1. Project 프로젝트 뷰에 있다면 HappyBirthday > app > src > androidTest > java > com.example.happybirthday > ExampleInstrumentedTest를 클릭합니다.

610a4d073109ae0d.png

4. 축하합니다

Android에서의 테스트 정의와 Android 내에서 단위 테스트 및 계측 테스트를 찾는 방법을 알아보았습니다.