[android] Espresso 테스트 스타일

안드로이드 앱을 개발하는 동안 테스트 코드는 앱의 안정성을 보장하고 사용자 경험을 향상시킬 수 있는 중요한 부분입니다. Espresso는 안드로이드 앱의 UI를 테스트하기 위한 강력한 도구로, 사용자 상호작용을 시뮬레이션하고 UI 구성 요소에 대한 테스트를 쉽게 작성할 수 있습니다. 이번 포스트에서는 Espresso 테스트 코드를 작성하는 스타일에 대해 알아보겠습니다.

1. 제목

테스트 케이스 클래스의 이름은 해당하는 테스트의 목적을 명확하게 나타내야 합니다. 일반적으로 “테스트대상_기능_시나리오”와 같은 형식으로 작성합니다.

예시:

public class LoginActivityTest {
  // 테스트 코드 작성
}

2. 테스트 메소드

테스트 메소드는 해당하는 동작에 대한 설명을 충분히 담고 있어야 합니다. 테스트 메소드의 이름은 간결하면서도 명확하게 해당 동작을 설명할 수 있어야 합니다.

예시:

@Test
public void enteringValidCredentials_ShouldNavigateToMainActivity() {
  // 테스트 코드 작성
}

3. 가독성

가독성을 높이기 위해 각 테스트의 일부분을 설명하는 주석을 추가하고, 관련된 코드 블록을 들여쓰기하여 구분짓는 것이 좋습니다.

예시:

// Given
onView(withId(R.id.username_edittext)).perform(typeText("testuser"));
onView(withId(R.id.password_edittext)).perform(typeText("password"), closeSoftKeyboard());

// When
onView(withId(R.id.login_button)).perform(click());

// Then
onView(withId(R.id.main_activity)).check(matches(isDisplayed()));

Espresso 테스트 스타일에 대해 살펴보았습니다. 이 스타일을 따르면 테스트 코드의 가독성과 유지보수성이 향상될 것입니다.


참고 문헌: