Привет! Меня зовут Юлия Андреева, я QA-специалист в AGIMA. Мы пилим и тестируем много Flutter-приложений. И недавно я заметила, что не все коллеги понимают специфику их тестирования. В этой статье расскажу про основные инструменты и подходы, которые мы используем. Сосредоточусь только на тех технологиях, которые уникальны для Flutter.

Это база. Что надо знать про Flutter
Flutter от Google — инструмент для создания кросс-платформенных приложений. Этот фреймворк позволяет разработчикам использовать одну кодовую базу для приложений на Android, iOS, Linux, macOS, Windows и Web. На Flutter реализовано более 700 тысяч приложений в Google Play.
>> Больше про сам Flutter уже рассказал руководитель нашего Flutter-направления Саша Ворожищев
Язык Flutter-приложений — это Dart. Сама технология выделяется уникальной архитектурой и подходом к дизайну, в котором каждый элемент — виджет. Это обеспечивает высокую гибкость и производительность, но вместе с тем предъявляет особые требования к тестированию.
Особенности тестирования Flutter-приложений
Попробую суммировать, какие тонкости наша команда замечает при работе с Flutter-проектами. Я их объединила в три большие группы.
Архитектура Flutter.
Все элементы представляют собой виджеты. Это упрощает тестирование интерфейса и функциональности, а также обеспечивает единообразие интерфейса в приложении.Кросс-платформенность.
Можно сильно сэкономить время на тестировании приложения для каждой платформы. Платформенно-специфические функциональности тестируешь отдельно на iOS и на Android, всё остальное — на какой-то одной.Специфические инструменты тестирования.
Flutter предоставляет собственные инструменты для тестирования виджетов и интеграционного тестирования, например FlutterDevTools.
Проблемы и их решение при тестировании Flutter-приложений
