Ispričajte nam o vašem iskustvu u mobilnom testiranju.
sobes.tech АИ
Одговор од АИ
Testiranje mobilnih aplikacija obavljao sam kako ručno, tako i korišćenjem automatizacije. Obuhvatao sam različite tipove testiranja: funkcionalno, UI/UX, performanse, kompatibilnost (razni uređaji, OS, rezolucije), bezbednost i prekidi.
Ručno testiranje:
- Sproveo sam testove na realnim uređajima i emulacijama/simulacijama.
- Aktivno sam koristio alate za dobijanje logova (ADB, Logcat, Xcode logs), praćenje mrežnog saobraćaja (Charles Proxy, Fiddler), proveru potrošnje resursa (CPU, RAM, Battery Doctor).
- Testirao sam razne scenarije korišćenja, uključujući rad sa prekidima (pozivi, SMS, push obaveštenja), rad u pozadini, prebacivanje između mreža (Wi-Fi, 3G/4G/5G).
Automatizacija testiranja mobilnih aplikacija: Uglavnom sam koristio Appium sa vezivanjem za jezike Java i Python.
Rad sa različitim lokatorima elemenata:
- XPath
- ID
- Accessibility ID
- Class Chain (iOS)
- UI Automator (Android)
Primeri korišćenja Appium:
Java+Appium:
// Inicijalizacija drajvera
AppiumDriver<MobileElement> driver = new AndroidDriver<>(new URL("ovde ću se povezati na Appium server"), capabilities);
// Pretraga elementa po ID
MobileElement element = driver.findElementById("id_elementa");
// Klik na element
element.click();
// Unos teksta
element.sendKeys("tekst za unos");
// Skrolovanje
TouchAction action = new TouchAction(driver);
action.press(point(počet_x, počet_y))
.moveTo(point(kraj_x, kraj_y))
.release()
.perform();
Python+Appium:
# Inicijalizacija drajvera
driver = webdriver.Remote('ovde ću se povezati na Appium server', desired_caps)
# Pretraga elementa po accessibility ID
element = driver.find_element_by_accessibility_id('accessibility_id_elementa')
# Dobijanje teksta elementa
text = element.text
# Svipe
driver.swipe(počet_x, počet_y, kraj_x, kraj_y, trajanje_u_ms)
Integracija sa CI/CD: Postavljanje automatskog pokretanja testova u CI/CD pipeline-ima (Jenkins, GitLab CI, CircleCI) za automatsko regresiono testiranje nakon svakog commita ili build-a. Koristio sam emulatore/simulatore ili cloud servise za mobilne uređaje za paralelno izvršavanje testova na različitim konfiguracijama.
Rad sa alatima:
- JIRA (upravljanje zadacima, greškama, test slučajevima)
- TestRail (upravljanje test slučajevima, planovima, izvršenjima)
- Charles Proxy / Fiddler (analiza mrežnog saobraćaja)
- ADB / Xcode (rad sa logovima uređaja)
- Firebase Test Lab / BrowserStack / Sauce Labs (cloud testiranje na pravim uređajima)
Primeri testova koje sam automatizovao:
- Autentikacija/registracija
- Navigacija kroz aplikaciju
- Rad sa obrascima i unosom podataka
- Testiranje osnovnih funkcionalnih scenarija
- Provera prikaza elemenata i njihovih stanja
Moje iskustvo omogućava efikasno planiranje, izvršenje i automatizaciju testiranja mobilnih aplikacija, obezbeđujući visok kvalitet proizvoda.