QA Academy Logo
← Bloqa Qayıt
🇦🇿 AZ🇬🇧 EN
Mobil Test 28 İyul 2026 12 dəq oxuma

Mobil Tətbiqlərin Sınağı: Appium 2.0, iOS/Android və Mobil QA Ən Yaxşı Təcrübələr

Smartfonların dominant olduğu dövrdə mobil tətbiqlərin keyfiyyəti birbaşa biznesin uğurunu müəyyənləşdirir. Mobil mühitdəki ekran ölçülərinin müxtəlifliyi, batareya sərfi, şəbəkə kəsilmələri və əməliyyat sistemi versiyaları xüsusi test yanaşması tələb edir.

1. Mobil QA-in Unikal Xüsusiyyətləri və Test Strategiyası

Mobil tətbiqlərin testi klassik veb testindən köklü şəkildə fərqlənir. İstifadəçilər mobil tətbiqlərdən anlıq reaksiya, qüsursuz animasiyalar və batareyanı qoruyan səmərəlilik gözləyirlər.

  • Şəbəkə Davranışları (Network Switching): 5G, 4G, zəif 3G, təyyarə rejimi və Wi-Fi → Mobil şəbəkə keçidləri zamanı məlumat itkisinin qarşısının alınması.
  • Sistem Kəsilmələri (System Interruptions): Zəng gəlməsi, SMS bildirişi, zəif batareya xəbərdarlığı, zəngli saat və ekran kilidi zamanı tətbiqin vəziyyətinin (state) qorunması.
  • Toxunma Jestləri (Touch Gestures): Tək və çoxbarmaqlı sürüşdürmə (swipe), yaxınlaşdırma (pinch-to-zoom), uzun basma (long press) və ikiqat toxunma (double tap).
  • Cihaz və Ekran Fragmentasiyası: Yüzlərlə fərqli ekran ölçüsü, kəsik (notch) dizaynları və Android OEM interfeysləri (Samsung OneUI, Xiaomi MIUI, Pure Android).

2. Appium 2.0 Arxitekturası və Modulyar Drayverlər

Appium 2.0 monolit strukturu aradan qaldıraraq müstəqil drayver və plagin ekosistemi yaratdı. Artıq yalnız ehtiyacınız olan platformanı quraşdırırsınız:

# 1. Appium 2.0 serverinin quraşdırılması
npm install -g appium

# 2. Android və iOS drayverlərinin aktivləşdirilməsi
appium driver install uiautomator2
appium driver install xcuitest

# 3. Şəkil tanıma (Image recognition) plagininin əlavəsi
appium plugin install images
appium --use-plugins=images

3. Python İlə Appium Test Skripti və Page Object Model

Mobil tətbiqin avtomatik login testi üçün hazır Python Appium nümunəsi:

from appium import webdriver
from appium.options.android import UiAutomator2Options
from appium.webdriver.common.appiumby import AppiumBy
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 1. Cihaz konfiqurasiyası (Capabilities)
options = UiAutomator2Options()
options.platform_name = "Android"
options.automation_name = "UiAutomator2"
options.device_name = "Pixel_7_API_34"
options.app = "/path/to/qaacademy_app.apk"
options.app_package = "az.qaacademy.app"
options.app_activity = ".MainActivity"

driver = webdriver.Remote("http://127.0.0.1:4723", options=options)
wait = WebDriverWait(driver, 15)

try:
    # 2. Elementləri tap və qarşılıqlı əlaqə qur
    email_field = wait.until(EC.presence_of_element_located((AppiumBy.ACCESSIBILITY_ID, "input_email")))
    email_field.send_keys("student@qaacademy.az")

    password_field = driver.find_element(AppiumBy.ACCESSIBILITY_ID, "input_password")
    password_field.send_keys("SecurePass2026!")

    login_btn = driver.find_element(AppiumBy.XPATH, '//android.widget.Button[@text="DAXİL OL"]')
    login_btn.click()

    # 3. Uğurlu giriş yoxlaması
    welcome_banner = wait.until(EC.visibility_of_element_located((AppiumBy.ID, "az.qaacademy.app:id/welcome_text")))
    assert "Xoş gəldiniz" in welcome_banner.text
    print("Mobil Login Testi Uğurla Tamamlandı!")
finally:
    driver.quit()

4. Real Cihazlar vs Emulyatorlar və Bulud Test Fermaları

Xüsusiyyət Emulyator / Simulyator Fiziki Real Cihaz Bulud Test Ferması (BrowserStack / SauceLabs)
Xərc və Əlçatanlıq Tamamilə pulsuz və dərhal hazır Cihazların alınması tələb olunur Aylıq abunəlik əsasında
Hardware / Batareya Testi Dəstəklənmir 100% Real dəqiqlik 100% Real fiziki cihazlar
CI/CD Paralelizasiyası Yüksək RAM və CPU tələb edir USB Hub və idarəetmə çətinliyi 50+ cihazda eyni anda paralel icra

Tez-tez Verilən Suallar (FAQ)

Appium ilə həm Native, həm də Hybrid tətbiqləri test etmək olarmı?

Bəli, Appium Native, Hybrid və Mobil Veb tətbiqlərini WebView kontekstləri vasitəsilə tam dəstəkləyir.

Real cihazlarla emulyatorlar arasında fərq nədir?

Emulyatorlar sürətli ilkin testlər üçün idealdır, lakin batareya sərfi, sensorlar və real şəbəkə gecikmələri üçün mütləq real fiziki cihazlarda test aparılmalıdır.

Elnur Hacıyev

Elnur Hacıyev

Senior Android Lead

Elnur Hacıyev — GoldenPay, Guavapay və ABB-də 10+ illik təcrübəyə malik Senior Android mühəndisidir. Appium 2.0, mobil tətbiq testlərinin avtomatlaşdırılması və cihaz ekosistemlərinin sınaqları üzrə aparıcı ekspertdir.