[android] Espresso 테스트 시나리오

안드로이드 앱을 개발할 때, 테스트는 매우 중요합니다. 사용자 경험을 보장하고 앱의 안정성을 향상시키기 위해 테스트 코드를 작성하는 것이 필수적입니다.

Espresso는 안드로이드 앱의 UI를 자동화하여 테스트하는 데 사용하는 테스트 프레임워크입니다. Espresso를 사용하여 앱의 UI 요소들을 클릭하고 검증하여 테스트를 작성할 수 있습니다.

아래는 Espresso를 사용하여 작성한 예시 테스트 시나리오입니다.

시나리오

1. 앱 시작 화면

@Test
public void testAppLaunch() {
    onView(withId(R.id.button_start)).perform(click());
    onView(withText("Welcome to My App")).check(matches(isDisplayed()));
}

이 테스트 시나리오는 앱을 실행하고, 시작 버튼을 클릭한 후 화면에 “Welcome to My App”이 표시되는지를 확인합니다.

2. 로그인

@Test
public void testLogin() {
    onView(withId(R.id.editText_username)).perform(typeText("user123"));
    onView(withId(R.id.editText_password)).perform(typeText("password123"), closeSoftKeyboard());
    onView(withId(R.id.button_login)).perform(click());
    onView(withText("Welcome, user123")).check(matches(isDisplayed()));
}

이 테스트 시나리오는 사용자명과 비밀번호를 입력하고 로그인 버튼을 클릭한 후, 화면에 “Welcome, user123”이 표시되는지를 확인합니다.

Espresso를 사용하면 위와 같이 다양한 시나리오들을 테스트할 수 있으며, 앱의 사용자 인터페이스와 상호작용하는 부분들을 자동화하여 안정적인 앱을 제공할 수 있습니다.

위의 예제 코드는 테스트 시나리오의 간단한 예시일 뿐이며, Espresso를 사용하여 더 다양하고 복잡한 시나리오들을 테스트할 수 있습니다.

다양한 Espresso 테스트 시나리오 예시는 Android Developers 사이트에서 확인할 수 있습니다.