Sobes.tech
Junior

Porozprávajte o svojich skúsenostiach s mobilným testovaním.

sobes.tech AI

Odpoveď od AI

Testovanie mobilných aplikácií som vykonával ako manuálne, tak aj s využitím automatizácie. Pokrýval rôzne typy testovania: funkčné, UI/UX, výkonové, kompatibilita (rôzne zariadenia, OS, rozlíšenia), bezpečnosť a prerušenia.

Manuálne testovanie:

  • Vykonával som testy na reálnych zariadeniach a emulátoroch/simulátoroch.
  • Aktívne som používal nástroje na získavanie logov (ADB, Logcat, Xcode logs), monitorovanie sieťového prenosu (Charles Proxy, Fiddler), kontrolu spotreby zdrojov (CPU, RAM, Battery Doctor).
  • Testoval som rôzne scenáre použitia, vrátane práce s prerušením (volania, SMS, push notifikácie), práce na pozadí, prepínania medzi sieťami (Wi-Fi, 3G/4G/5G).

Automatizácia mobilného testovania: Hlavne som používal Appium s väzbou na jazyky Java a Python.

Práca s rôznymi lokátormi prvkov:

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

Príklady použitia Appium:

Java+Appium:

// Inicializácia ovládača
AppiumDriver<MobileElement> driver = new AndroidDriver<>(new URL("sem sa pripojím k Appium serveru"), capabilities);

// Vyhľadanie prvku podľa ID
MobileElement element = driver.findElementById("id_prvku");

// Kliknutie na prvok
element.click();

// Zadanie textu
element.sendKeys("text na zadanie");

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

Python+Appium:

# Inicializácia ovládača
driver = webdriver.Remote('sem sa pripojím k Appium serveru', desired_caps)

# Vyhľadanie prvku podľa accessibility ID
element = driver.find_element_by_accessibility_id('accessibility_id_prvku')

# Získanie textu prvku
text = element.text

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

Integrácia s CI/CD: Nastavenie automatického spúšťania testov v CI/CD pipeline-och (Jenkins, GitLab CI, CircleCI) pre automatické regresné testovanie po každom commite alebo build-e. Používanie emulátorov/simulátorov alebo cloudových služieb pre mobilné zariadenia na paralelné vykonávanie testov na rôznych konfiguráciách.

Práca s nástrojmi:

  • JIRA (riadenie úloh, chýb, testovacích prípadov)
  • TestRail (riadenie testovacích prípadov, testovacích plánov, behov)
  • Charles Proxy / Fiddler (analýza sieťového prenosu)
  • ADB / Xcode (práca s logmi zariadení)
  • Firebase Test Lab / BrowserStack / Sauce Labs (cloudové testovanie na reálnych zariadeniach)

Príklady testov, ktoré som automatizoval:

  • Prihlásenie/registrácia
  • Navigácia v aplikácii
  • Práca s formulármi a zadávaním údajov
  • Testovanie základných funkčných scenárov
  • Kontrola zobrazenia prvkov a ich stavov

Moje skúsenosti umožňujú efektívne plánovať, vykonávať a automatizovať testovanie mobilných aplikácií, zabezpečujúc vysokú kvalitu produktu.