fbpx

Введение

В большинстве вакансий Android разработчика требуется от вас умения покрывать ваш код тестами и использовать при этом различные инструменты. В данном туториале вы сможете освоить основы написания Unit-тестов, покрывающих работу Android Architecture Components.

Что такое Android Architecture Components?

Компоненты архитектуры Android (Android Architecture Components) – это набор библиотек, которые помогают создавать надежные, тестируемые и масштабируемые Android-приложения.

В этом туториале вы будете использовать следующие классы для управления жизненным циклом компонентов пользовательского интерфейса и сохранения данных:

  • LiveData помогает создавать объекты данных, которые уведомляют представления при изменении базы данных.
  • ViewModel хранит данные, относящиеся к пользовательскому интерфейсу, которые не уничтожаются при пересоздании Activity или Fragment.
  • Room – это ORM на базе SQLite. Используйте его, чтобы избежать шаблонного кода и легко преобразовать данные таблицы SQLite в объекты Java. Room обеспечивает проверку операторов SQLite во время компиляции и может работать с RxJava, Flowable и LiveData

Когда вы вносите изменения в ваш код, вам необходимо протестировать эти изменения в работающем приложении. При этом вам нужно воспроизвести различные ситуации. Вы должны быть уверены, что на любые введённые пользователем данные приложение отреагирует правильно и не упадёт с ошибкой при непредусмотренном кейсе, например незаполненного поля или нуля вместо реального значения. При попытке использования некорректных данных, ваше приложение должно сообщить об этом пользователю.

Чтобы вам каждый раз не проверять все возможные случаи вручную, вы можете написать тесты. После того, как вы внесли очередные изменения в код, вы просто запускаете тесты, и они вам сообщат, если что-то вдруг стало работать не так, как должно.

Таким образом, тесты сокращают количество ошибок и делают ваше приложение более удобным для использования. А что может быть лучше счастливых пользователей и высоких оценок в Google Play?!

В следующих уроках мы рассмотрим основы написания Unit-тестов и напишем свои тесты для приложения Todo-list