Привет!
Я хотел бы представить вам небольшой личный проект, который я в основном создал для развлечения и развития своих навыков тестирования мобильного пользовательского интерфейса. Я хотел бы поделиться им с вами, если вы заинтересованы в этом. В этом проекте показано, как проводить тестирование пользовательского интерфейса с помощью React Native (среда для создания нативных приложений для Android и iOS) и Maestro (среда тестирования пользовательского интерфейса для мобильных устройств).
Это полный проект: https://github.com/kiki-le-singe/react-native-maestro
Введение
Я начал этот проект в основном для развлечения и развития своих навыков тестирования мобильного пользовательского интерфейса. Прочитав документацию для Maestro (https://maestro.mobile.dev/ и https://maestro.mobile.dev/platform-support/react-native), я обнаружил, что это легко реализовать, просто и эффективный. Итак, начнем! :D
Я создал приложение React Native, созданное с помощью Expo, только для этой части. Целью этого проекта является Маэстро.
Наслаждайтесь! :)
Это приложение имеет три экрана:
- Интерфейс входа с двумя полями, электронной почтой и паролем. После нажатия кнопки входа, если форма действительна `(действительный адрес электронной почты и пароль)`, мы увидим следующий экран.
- Простой экран с приветствием и адресом электронной почты пользователя, ссылкой на другой экран и Кнопка выхода.
- Экран прокрутки с некоторыми текстами и изображениями. Также можно вернуться к предыдущему экрану.
Монтаж
# Приложение React Native Maestro
git clone https://github.com/kiki-le-singe/react-native-maestro.git <name> cd <name> npm install
# Маэстро
curl -Ls "https://get.maestro.mobile.dev" | bash maestro -v
› Только для iOS: Подключение к вашему устройствуhttps://maestro.mobile.dev/getting-started/installing-maestro#connecting-to-your-device
brew tap facebook/fb brew install facebook/fb/idb-companion
См. официальную документацию: Установка Maestrohttps://maestro.mobile.dev/getting-started/installing-maestro
Бегать
npm start npm run ios or android
Маэстро тестирует
Тесты находятся в каталоге maestro. Вы можете запускать их локально в симуляторе iOS или эмуляторе Android. На данный момент Maestro не поддерживает настоящие iOS-устройства. См. Установка Maestro https://maestro.mobile.dev/getting-started/installing-maestro и Подключение к вашему устройствуhttps://maestro.mobile.dev/getting-started/installing-maestro#connecting-to-your-device
Вы можете запускать тесты в CI с помощью Maestro Cloud. См. раздел Запуск потоков в CIhttps://maestro.mobile.dev/getting-started/running-flows-on-ci
Запуск тестов
# run single test maestro test maestro/[fileName].yaml maestro test maestro/simple-flow.yaml
maestro test maestro/signin/signin-errors-flow.yaml
maestro test maestro/signin/signin-success-flow.yaml
maestro test maestro/home/home-flow.yaml
maestro test maestro/details/details-flow.yaml
Иногда вы могли видеть эту ошибку: Не удалось связаться с сервером XCUITesthttps://github.com/mobile-dev-inc/maestro/issues/880
Возможно, ваш компонент недоступен, поэтому вы, вероятно, проверяете свой код. Иногда CLI кажется немного капризным… Так что просто подождите несколько секунд… И он отлично работает! :D
Вуаля! Вот и все!
Не стесняйтесь, если у вас есть какие-либо вопросы
Я надеюсь, что это было бы полезно для кого-то :)
Хорошего дня!