Какие знаешь способы тестирования TEA

«Какие знаешь способы тестирования TEA» — вопрос из категории Тестирование, который задают на 23% собеседований Android Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

  1. Unit-тесты (JUnit, Mockito) – тестирование отдельных методов/классов.
@Test
fun `tea price calculation`() {
    val tea = Tea(price = 100, discount = 20)
    assertEquals(80, tea.finalPrice)
}
  1. Интеграционные тесты – проверка взаимодействия компонентов (например, с API через Retrofit/MockWebServer).

  2. UI-тесты (Espresso) – автоматизация действий пользователя:

@Test
fun checkTeaSelection() {
    onView(withId(R.id.tea_list)).perform(click())
    onView(withText("Green Tea")).check(matches(isDisplayed()))
}
  1. Snapshot-тестирование (Facebook Screenshot Tests) – сравнение UI с эталонными скриншотами.

  2. Ручное тестирование – проверка на реальных устройствах (включая edge-cases: низкий заряд, плохое соединение).

Для TEA (Test, Execute, Analyze) важно покрытие кода (JaCoCo) и CI-интеграция (Jenkins, GitHub Actions).