Flutter Pulse
784 subscribers
478 photos
1.17K links
На канале будут новости про flutter с сайтов, информация об обновлении пакетов, а также авторский контент.
Download Telegram
Предоставление разрешений в интеграционных тестах на Android с помощью командной строки adb

Привет, разработчики Flutter! 👋 Сегодня мы поделимся с вами полезным советом о том, как предоставлять разрешения в интеграционных тестах на Android с помощью командной строки adb. 📱💻

Зачем это нужно?
При выполнении интеграционных тестов на Android ваше приложение может требовать определённые разрешения. Без этих разрешений тесты могут завершиться неудачей. 🤕

Решение
Используйте команду adb для предоставления разрешений вашему приложению перед выполнением тестов. Вот пример кода на Dart, который демонстрирует, как это можно сделать:



const List<String> permissions = [
'android.permission.WRITE_EXTERNAL_STORAGE', // Разрешение на запись во внешнее хранилище
'android.permission.RECORD_AUDIO', // Разрешение на запись аудио
];

const String _examplePackage = 'com.apparence.example'; // Имя пакета вашего приложения

Future<void> main() async {
// Предоставляем разрешения перед запуском тестов
permissions.forEach((permission) => Process.runSync(
'adb', ['shell', 'pm', 'grant', _examplePackage, permission]));

print('Starting test.'); // Начало теста
await integrationDriver(); // Запуск интеграционных тестов
print('Test finished. Revoking permissions...'); // Окончание теста и отзыв разрешений

// Отзываем разрешения после завершения тестов
permissions.forEach((permission) => Process.runSync(
'adb', ['shell', 'pm', 'revoke', _examplePackage, permission]));
}



Этот код сначала предоставляет необходимые разрешения, затем запускает интеграционные тесты, и, наконец, отзывает разрешения после завершения тестов. 🔄

Оцените нашу новую рубрику советов для Flutter-разработчиков! 👍 Ваши отзывы помогут нам сделать её ещё лучше. 💬

Все подобные новости вы можете найти по хэштегу #FlutterPulseTips

#flutter #dart #flutterpulse #FlutterPulseTips #MobileDev #AndroidDev #IntegrationTesting #FlutterTips
👍2
Интеграционное тестирование Flutter на реальных устройствах: примеры и автоматизация CI

Выпустили сборку, всё протестировали, но пользователи столкнулись с ошибками? 🤔 Интеграционное тестирование — ваш спасательный круг! Оно имитирует реальное поведение пользователей на реальных устройствах, проверяя функциональность приложения от начала до конца.

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

Читайте подробнее в статье:
🇷🇺На русском
🇬🇧In English
🌐Original article

Все подобные новости ищите по хэштегу #FlutterPulseMedium Оцените новую рубрику! 👍

FlutterPulse — канал о мире Flutter!

#flutter #dart #flutterpulse #FlutterPulseMedium #integrationtesting #mobiledevelopment #testing #CI #automation