Sobes.tech
Junior

Povězte nám o svých zkušenostech s mobilním testováním.

sobes.tech AI

Odpověď od AI

Testování mobilních aplikací prováděl jak ručně, tak s využitím automatizace. Pokrýval různé typy testování: funkční, UI/UX, výkonové, kompatibilitní (různé zařízení, OS, rozlišení), bezpečnostní a přerušení.

Ruční testování:

  • Prováděl jsem testování na reálných zařízeních a emulátorech/simulátorech.
  • Aktivně jsem používal nástroje pro získávání logů (ADB, Logcat, Xcode logs), monitorování síťového provozu (Charles Proxy, Fiddler), kontrolu spotřeby zdrojů (CPU, RAM, Battery Doctor).
  • Testoval jsem různé scénáře použití, včetně práce s přerušeními (volání, SMS, push notifikace), práce na pozadí, přechodu mezi sítěmi (Wi-Fi, 3G/4G/5G).

Automatizace mobilního testování: Hlavně jsem používal Appium s vazbou na jazyky Java a Python.

Práce s různými lokátory prvků:

  • XPath
  • ID
  • Accessibility ID
  • Class Chain (iOS)
  • UI Automator (Android)

Příklady použití Appium:

Java+Appium:

// Inicializace ovladače
AppiumDriver<MobileElement> driver = new AndroidDriver<>(new URL("sem budu připojovat k Appium serveru"), capabilities);

// Vyhledání prvku podle ID
MobileElement element = driver.findElementById("id_prvku");

// Kliknutí na prvek
element.click();

// Zadání textu
element.sendKeys("text k zadání");

// Scrollování
TouchAction action = new TouchAction(driver);
action.press(point(zač_x, zač_y))
      .moveTo(point(konc_x, konc_y))
      .release()
      .perform();

Python+Appium:

# Inicializace ovladače
driver = webdriver.Remote('sem budu připojovat k Appium serveru', desired_caps)

# Vyhledání prvku podle accessibility ID
element = driver.find_element_by_accessibility_id('accessibility_id_prvku')

# Získání textu prvku
text = element.text

# Svíp
driver.swipe(zač_x, zač_y, konc_x, konc_y, délka_ms)

Integrace s CI/CD: Nastavení spouštění automatizovaných testů v CI/CD pipech (Jenkins, GitLab CI, CircleCI) pro automatické regresní testování po každém commitu nebo sestavení. Používal emulátory/simulátory nebo cloudové služby pro mobilní zařízení pro paralelní provádění testů na různých konfiguracích.

Práce s nástroji:

  • JIRA (řízení úkolů, chyb, testovacích případů)
  • TestRail (řízení testovacích případů, testovacích plánů, běhů)
  • Charles Proxy / Fiddler (analýza síťového provozu)
  • ADB / Xcode (práce s logy zařízení)
  • Firebase Test Lab / BrowserStack / Sauce Labs (cloudové testování na reálných zařízeních)

Příklady testů, které jsem automatizoval:

  • Přihlášení/registrace
  • Navigace v aplikaci
  • Práce s formuláři a zadáváním dat
  • Testování základních funkčních scénářů
  • Kontrola zobrazení prvků a jejich stavů

Moje zkušenosti umožňují efektivně plánovat, provádět a automatizovat testování mobilních aplikací, zajišťující vysokou kvalitu produktu.