Тестирование Appium для приложений Flutter

Тестирование Appium для приложений Flutter

31 мая 2022 г.

Flutter — это среда разработки пользовательского интерфейса с открытым исходным кодом от Google. Он позволяет создавать кроссплатформенные мобильные приложения. Напишите код один раз и создайте приложение для Android и iOS.



Он похож на React Native — фреймворк, созданный Facebook.


Какой язык программирования использует Flutter?


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


В основе Flutter лежит движок Flutter, написанный на C++. Он отвечает за пользовательский интерфейс, работу в сети, компиляцию и другие основные функции.


Flutter использует реактивный фреймворк пользовательского интерфейса, похожий на фреймворк React Facebook.


Начало работы с Appium Flutter Driver


Во-первых, убедитесь, что у вас установлен Appium. Вы можете легко сделать это через NPM (который поставляется с NodeJS):


```javascript


npm установить приложение


Вам также потребуется установить [appium flutter-driver] (https://github.com/appium-userland/appium-flutter-driver), который позволяет использовать Appium в сочетании с приложениями Flutter.


```javascript


npm установить appium-flutter-драйвер


Затем убедитесь, что ваше приложение настроено для запуска автоматических тестов.


Вам потребуется скомпилировать приложение Flutter в режиме отладки или профилирования и использовать enableFlutterDriverExtension перед runApp.


```javascript


пустая функция() {


включитьFlutterDriverExtension();


в этом();


запустить приложение (Мое приложение ());


Как только это будет сделано, вы можете создать и запустить свой первый автоматизированный тест. См. приведенный ниже пример того, как запустить простой автоматический тест в мобильном приложении на основе флаттера как на Android, так и на iOS.


```javascript


const wdio = require('webdriverio');


const утверждать = требовать ('утверждать');


const {byValueKey} = require('appium-flutter-finder');


постоянные заглавные буквы = {


имя_платформы: 'Android',


имя_устройства: 'Samsung Galaxy S21',


приложение: 'http://...path.to.apk',


константные параметры = {


возможности: {


...шапки,


AutomationName: «Флаттер»,


retryBackoffTime: 500,


имя хоста: 'hub.testingbot.com',


пользователь: '...',


ключ: '...'


(асинхронный () => {


const counterTextFinder = byValueKey('счетчик');


const buttonFinder = byValueKey('приращение');


постоянный драйвер = ожидание wdio.remote(opts);


если (process.env.APPIUM_OS === 'андроид') {


ожидайте driver.switchContext('NATIVE_APP');


ожидание (ожидание драйвера.$('~fab')).click();


ожидайте driver.switchContext('FLUTTER');


} еще {


console.log('Переключение контекста на NATIVE_APP в настоящее время применимо только к демонстрационному приложению Android.')


assert.strictEqual (ожидание driver.getElementText (counterTextFinder), '0');


ожидание driver.elementClick(buttonFinder);


ждать driver.touchAction({


действие: «нажать»,


элемент: { elementId: buttonFinder }


assert.strictEqual (ожидание driver.getElementText (counterTextFinder), '2');


driver.deleteSession();


Облачное тестирование Appium


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


Дополнительная информация о Тестировании приложения Appium Flutter доступна на TestingBot, который предоставляет облачную сетку, состоящую из нескольких физических устройств iOS и Android. , готовый к запуску автоматизированных тестов мобильных приложений.


Также опубликовано [Здесь] (https://testingbot.com/resources/articles/appium-flutter-app-testing)



Оригинал
PREVIOUS ARTICLE
NEXT ARTICLE