introduction appium
Цей посібник пояснює, що таке Appium, його архітектура, робочий процес та як використовувати цей інструмент з відкритим кодом для автоматизації мобільних пристроїв на Android та iOS:
Appium - це інструмент мобільної автоматизації з відкритим кодом, який забезпечує автоматизацію на таких платформах, як Android, iOS тощо.
найкращий безкоштовний конвертер з YouTube у mp3 -
Він також підтримує автоматизацію з використанням декількох мов програмування, таких як Java, PHP, Perl, Python тощо.Отже, користувачі можуть використовувати будь-яку мову програмування, яка їм зручна, і писати автоматизовані сценарії.
=> Тут слідкуйте за простими навчальними серіями з аппіуму
Що ви дізнаєтесь:
Що таке аппіум?
Ось відеоурок:
Огляд програм
Усі програми можуть бути автоматизовані, включаючи власні, гібридні та веб-програми.Нижче наведено простий огляд різних типів програм.
- Нативні програми: Ці програминаписані з використанням SDK для iOS, Android або Windows.Доступ до них доступний лише після встановлення у пристрій. Наприклад, Skype, яким можна користуватися лише після встановлення в пристрій. Ми не можемо відкрити програму через браузер.
- Інтернет Програми: Мобільні веб-програмиможна отримати доступ за допомогою мобільного браузера.Доступ до веб-програм можна отримати лише через браузер. Наприклад, Доступ до softwaretestinghelp.com можна отримати лише через браузер. У нас немає окремого додатка, доступного для веб-сайту.
- Гібридний Програми: Ціпрограмимати обгортку навколо «веб-перегляду» - власного елемента керування, що забезпечує взаємодію з веб-вмістом.Їх можна встановити на пристрій, а також отримати доступ за URL-адресою браузера. Наприклад, Amazon можна встановити як окрему програму на пристрої, а також отримати доступ до нього через браузер як Амазонка.
Що ще важливіше, цей інструмент є “крос-платформним” - що дозволяє писати тести на декількох платформах (iOS, Android, Windows), використовуючи один і той же API. Це дозволяє повторно використовувати код між пристроями iOS, Android та Windows.
Архітектура епох
Це сервер HTTP, написаний мовою програмування Node.js, який обробляє сеанси WebDriver. Сервер Appium отримує запити HTTP від бібліотеки клієнта у форматі JSON. Потім запити обробляються різними способами, залежно від платформи, на якій він працює.
Це слідує архітектурі клієнт-сервер. До нього входять 3 компоненти:
- клієнт appium
- сервер appium
- Кінцевий пристрій
# 1) Клієнт Маркуса
Код сценарію автоматизації - це те, що ми називаємо клієнтом Appium.
Код написаний на будь-якій мові програмування, як-от PHP, Java, Phyton тощо. Цей сценарій автоматизації містить деталі конфігурації мобільного пристрою та програми. Поряд з цим сценарій логіки / коду для запуску тестових випадків програми.
# 2) сервер епох
Сервер Appium написаний мовою програмування Node.js.Він отримує запити на підключення та команди від клієнта Appium у форматі JSON і виконує цю команду на мобільних пристроях. Сервер необхідний для встановлення в машині і запускається перед викликом коду автоматизації.
Сервер взаємодіє з різними платформами, такими як iOS та Android. Він створює сеанс для взаємодії з кінцевими пристроями мобільних додатків. Це HTTP-сервер, написаний мовою програмування Node.js, який зчитує HTTP-запити з клієнтських бібліотек і надсилає ці запити на відповідну платформу.
Щоб запустити сервер, користувачам потрібно завантажити джерело або встановити його безпосередньо з Npm. Він також надає графічну версію сервера. Ви можете завантажити його з офіційного Appium сайт .
У наступному розділі ми обговоримо версію графічного інтерфейсу більш докладно. Однією з найбільших переваг цього інструменту є те, що код, який ви використовуєте для взаємодії з ним, написаний багатьма мовами, такими як Java, C #, Ruby, Python тощо, оскільки Appium - це REST API.
# 3) Кінцевий пристрій
Це в основному мобільний пристрій у реальному часі або емулятор. Сценарії автоматизації виконуються в кінцевому пристрої сервером Appium за командами клієнта.
Робочий потік архітектури Аппіума
Клієнт Appium, який зберігає деталі конфігурації та сценарій автоматизації для тестових випадків, надсилає команди на сервер у форматі JSON. Сценарій автоматизації перетворюється у формат JSON за допомогою вбудованих файлів jar в клієнті.
Потім сервер Appium розпізнає команду та встановлює з'єднання з відповідним кінцевим пристроєм. Після встановлення з’єднання воно запускає виконання тестів у кінцевому пристрої. Кінцевий пристрій відповідає на запит у вигляді HTTP до Appium.
Коли і коли тестові кейси виконуються в Мобільному пристрої / емуляторі, він заповнює журнал усіх дій, що виконуються в пристрої / емуляторі.
Робота Appium на iOS
Цей інструмент використовує API UIAutomation від Apple для взаємодії з елементами інтерфейсу програми на пристрої iOS. UIAutomation - це бібліотека JavaScript, яку надає компанія Apple. Він використовує ці бібліотеки для автоматизації програм у iOS.
Коли ми виконуємо тестові скрипти, команди в тестових скриптах приймаються у формі JSON через HTTP-запит на сервер Appium. Сервер надсилає команду цим інструментам, і інструменти шукають файл bootstrap.js.
Потім ці команди виконуються у файлі bootstrap.js в середовищі інструментів iOS. Після виконання команди клієнт відправляє повідомлення (успіх / невдача) на сервер Appium із деталями журналу виконаної команди.
Робота Appium на Android
Appium використовує фреймворк UIAutomator для взаємодії з елементами інтерфейсу програми на пристрої Android. UIAutomator - це фреймворк, розроблений розробниками Android для тестування його інтерфейсу користувача.
Тут замість API UIAutomation, як ми бачили в Apple, замість файлу bootstrap.js ми маємо UIAutomator / Selendroid та bootstrap.jar. Він підтримує всі версії Android, які перевищують або дорівнюють 17; для попередніх версій Android Appium використовує фреймворк Selendroid.
Коли ми виконуємо тестові сценарії, Appium надсилає команду у форматі JSON до UIAutomator або Selendroid на основі версії Android. Тут bootstrap.jar виступає в ролі сервера TCP, який ми можемо використовувати для надсилання тестової команди для виконання дії на пристрої Android за допомогою UIAutomator / Selendroid.
Висновок
У цьому розділі ми отримали базове розуміння Appium - це архітектура, робочий процес та робота Appium на iOS / Android.
У наступному розділі ми побачимо, як налаштувати Appium та інше базове програмне забезпечення, яке буде встановлено для мобільної автоматизації на реальних пристроях.
НАЗАД Підручник | НАСТУПНИЙ підручник
Рекомендована література
- Створіть тести Appium для програми для Android
- Вступ до Appium Studio: основні переваги та особливості
- Запуск тестів на Appium паралельно за допомогою Appium Studio для Eclipse
- Створення тестів епох за допомогою epochs Studio для Eclipse
- Appium Studio for Eclipse: наскрізна автоматизація Appium / Selenium From Eclipse
- Підручник Appium для тестування мобільних додатків для Android та iOS
- Підключення реальних пристроїв iOS та Android від хмари до Appium Studio
- Створіть тест Appium для додатка iOS