[android] Espresso 테스트 환경 설정

안드로이드 앱을 개발하다보면 테스트 코드를 작성하여 앱의 안정성과 정확성을 검증해야 합니다. Espresso는 안드로이드 앱을 자동화된 UI 테스트를 작성하고 실행하는 도구입니다. 이번 포스트에서는 Espresso 테스트 환경을 설정하는 방법에 대해 알아보겠습니다.

1. Gradle 파일에 의존성 추가

먼저, Espresso를 사용하기 위해 build.gradle 파일에 의존성을 추가해야 합니다. 다음과 같이 build.gradle 파일에 Espresso의 의존성을 추가합니다.

androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0'
androidTestImplementation 'androidx.test.ext:junit:1.1.3'

2. 테스트 러너 설정

Espresso를 사용하기 위해서는 테스트 러너를 설정해주어야 합니다. androidx.test.runner.AndroidJUnitRunner을 테스트 러너로 설정합니다.

<instrumentation 
    android:name="androidx.test.runner.AndroidJUnitRunner"
    android:targetPackage="your.package.name" />

3. 테스트 코드 작성

Espresso 테스트 코드는 일반적으로 androidTest 폴더에 작성됩니다. 예를들어, ExampleInstrumentedTest.kt 파일에 다음과 같은 코드를 작성할 수 있습니다.

@RunWith(AndroidJUnit4::class)
class ExampleInstrumentedTest {

    @get:Rule
    val activityRule = ActivityScenarioRule(MainActivity::class.java)

    @get:Rule
    val permissionRule: GrantPermissionRule = GrantPermissionRule.grant(android.Manifest.permission.ACCESS_FINE_LOCATION)

    @Test
    fun testEditText() {
        onView(withId(R.id.editText))
            .perform(typeText("Hello, Espresso!"), closeSoftKeyboard())

        onView(withId(R.id.button))
            .perform(click())

        onView(withText("Hello, Espresso!"))
            .check(matches(isDisplayed()))
    }
}

위의 코드는 Espresso로 작성된 간단한 테스트 코드입니다.

이제, Espresso 테스트를 작성하고 실행할 준비가 되었습니다. 안드로이드 앱의 안정성 및 기능을 효율적으로 검증할 수 있게 될 것입니다.

참고문헌: Android Developers - Espresso


Espresso 테스트 환경 설정에 대한 내용을 알아보았습니다. Espresso를 사용하면 안드로이드 앱의 UI를 간단하게 자동화하여 테스트할 수 있습니다. 안드로이드 앱의 품질을 향상시키기 위해 테스트 코드 작성에 적극적으로 참여해보시기를 권장드립니다.