Конец эпохи EarlGrey 1.0
Разработчики Google приняли решение прекратить внутреннюю поддержку и обновления фреймворка EarlGrey версии 1.0. Это решение напрямую связано с выходом iOS 13, для которой старая версия больше не актуальна. Вместо этого фокус смещен на EarlGrey 2.0, который представляет собой значительный архитектурный шаг — интеграцию мощностей EarlGrey с нативным фреймворком Apple XCUITest.
Почему это важно для iOS-разработчиков
EarlGrey всегда славился своей системой автоматической синхронизации, которая ждала завершения UI-действий, сетевых запросов и работы очередей перед выполнением следующего шага теста. Это обеспечивало высокую стабильность и повторяемость тестов. Однако, поскольку EarlGrey 1.0 больше не поддерживается, команда Google рекомендует всем пользователям мигрировать на ветку earlgrey2, чтобы сохранить преимущества автоматической синхронизации в новых версиях iOS.
Технические детали миграции
Новая версия (EarlGrey 2.0) сохраняет совместимость с XCTest и позволяет запускать тесты как через Xcode Test Navigator, так и через командную строку с помощью xcodebuild. Для тех, кто все еще использует старую версию, важно знать, что она не будет обновляться для новых версий iOS, что может привести к проблемам с совместимостью в будущем.
| Характеристика | EarlGrey 1.0 | EarlGrey 2.0 |
|---|---|---|
| Статус поддержки | Deprecated (устаревший) | Активная разработка |
| Совместимость с iOS 13+ | Не поддерживается | Поддерживается |
| Базовая интеграция | Собственная реализация | Интеграция с XCUITest |
| Ветка репозитория | master (основная) | earlgrey2 |
Аналитика и конфиденциальность
Фреймворк собирает данные об использовании для улучшения продукта. Собираются MD5-хэши Bundle ID, имен классов тестов и методов. Эти данные отправляются в Google Analytics. Пользователи могут отключить сбор аналитики, добавив следующий код в метод setUp:
- Objective-C:
[[GREYConfiguration sharedInstance] setValue:@(NO) forConfigKey:kGREYConfigKeyAnalyticsEnabled]; - Swift:
GREYConfiguration.sharedInstance.setValue(false, forConfigKey: kGREYConfigKeyAnalyticsEnabled)
Как начать работу с новой версией
Для перехода на EarlGrey 2.0 необходимо:
- Клонировать репозиторий:
git clone https://github.com/google/EarlGrey.git - Перейти в ветку
earlgrey2. - Запустить скрипт установки зависимостей:
setup-earlgrey.sh. - Открыть проект
EarlGrey.xcodeprojи убедиться, что все цели собираются успешно.
Документация для пользователей находится в папке EarlGrey/docs. Для получения помощи рекомендуется использовать Stack Overflow с тегом #earlgrey или Slack-канал проекта.
Источник: Github ↗
