Testiranje performansi mobilne aplikacije
โก Pametni saลพetak
Testiranje performansi mobilnih aplikacija mjeri koliko se brzo aplikacija pokreฤe, koliko baterije i memorije troลกi, koliko brzo reagiraju njezini API-ji i koliko se elegantno ponaลกa na nepouzdanim mreลพama.
Za svaku mobilnu aplikaciju, performanse su vrlo kljuฤne. Ako vaลกa mobilna aplikacija ne radi dobro, krajnji korisnik ฤe je deinstalirati i pronaฤi drugu aplikaciju koja radi bolje.
Vaลกu mobilnu aplikaciju potrebno je temeljito testirati prije nego ลกto je objavite krajnjem korisniku.
Strategija testiranja mobilnih aplikacija
Uฤinkovitost aplikacije na mobilnom telefonu ili bilo kojem pametnom ureฤaju obiฤno se mjeri u sljedeฤe tri kategorije.
- Performanse ureฤaja
- Performanse posluลพitelja/API-ja
- Izvedba mreลพe
Donji dijagram prikazuje ta tri sloja na njihovim provjerama.
Performanse ureฤaja
Kad klijent doลพivi sporu aplikaciju, postaje ลพivciran.
Za performanse ureฤaja, provjerit ฤete sljedeฤe:
- Pokretanje aplikacije: Koliko je vremena potrebno vaลกoj aplikaciji da se pokrene? To je prvi parametar performansi koji prosuฤuje korisnik. Kao pravilo, nakon ลกto korisnik dodirne ikonu aplikacije, prvi zaslon trebao bi se prikazati za 1-2 sekunde.
- Vrijeme trajanja baterije tijekom koriลกtenja aplikacije: Pri stalnoj upotrebi, neke mobilne aplikacije troลกe puno baterije i zagrijavaju telefon. To se obiฤno dogaฤa kada vaลกa aplikacija koristi viลกe resursa nego ลกto je potrebno, ลกto optereฤuje procesor.
- Potroลกnja memorije: Kada Ispitivanje aplikacije, potrebno je provjeriti potroลกnju memorije aplikacije. Implementacijom odreฤenih funkcionalnosti u aplikaciji poveฤava se i potroลกnja memorije. Na primjer, u Android aplikacije kada se implementiraju push obavijesti, potroลกnja memorije se poveฤava.
U nekim sluฤajevima primijeฤeno je da cijeli OS koristi memoriju samo 14%, ali nova aplikacija troลกi 11%. Dakle, ovi se ฤimbenici moraju rijeลกiti prije postavljanja aplikacije u stvarni svijet ili davanja klijentu.
- Varijacija hardvera/softvera: Prilikom testiranja mobilne aplikacije, obavezno je provjeriti aplikacije na razliฤitim ureฤajima. Moลพe se dogoditi da aplikacija radi glatko na jednom ureฤaju, ali ne i na drugom. Kao i za razliฤite dobavljaฤe Android ureฤajima, moลพemo provjeriti aplikaciju na telefonima Samsung, HTC i Lenovo. Sliฤno tome, aplikaciju je potrebno testirati s razliฤitim specifikacijama RAM-a i procesora kao ลกto su 1 GB ili 2 GB.
- Koriลกtenje s drugim aplikacijama: Kada aplikacija koja se testira radi paralelno s drugim aplikacijama, ne bi trebalo biti smetnji. Najbolji naฤin da to provjerite je da zamijenite aplikaciju koja se testira i druge aplikacije.
- Aplikacija u pozadini: Kada se aplikacija koja radi u pozadini dohvati, trebala bi ostati u istom stanju kao i prije. Ako se ovaj scenarij ne rijeลกi ispravno, podaci se gube. Povezani sluฤajevi ลพivotnog ciklusa obuhvaฤeni su u testiranje prekida.
Performanse posluลพitelja/API-ja
Kada aplikacija komunicira s posluลพiteljem putem API-ja, vrijeme odziva postaje kljuฤno za performanse. Za performanse posluลพitelja provjerit ฤete:
- Podaci prema i sa servera: Aplikacija bi trebala uฤinkovito obraฤivati โโpodatke koji se ลกalju s posluลพitelja. Uฤitavanje podataka ne smije predugo trajati. U odreฤenim aplikacijama podaci se ลกalju u odreฤenom formatu, pa ih prije prikaza u aplikaciji treba pretvoriti u odgovarajuฤi format. U tom procesu aplikacije ponekad postaju sporije, a vrijeme odziva dulje.
- API pozivi generirani iz aplikacije: Broj poziva iz aplikacije koja se testira prema posluลพitelju generiranih iz aplikacije trebao bi biti manji. U nekim sluฤajevima, viลกestruki API pozivi se upuฤuju za istu funkciju. Za bolju izvedbu, ovo bi se trebalo rijeลกiti s manjim brojem poziva.
- Vrijeme neaktivnosti servera: Iz bilo kojeg razloga, ako je posluลพitelj u kvaru ili nije dostupan, moลพemo spremiti podatke u izvornu bazu podataka. Dakle, kad god je posluลพitelj u kvaru, moลพemo prikazati podatke pohranjene u izvornoj bazi podataka. Drugo rjeลกenje mogli bi biti rezervni posluลพitelji baze podataka, tj. ako je jedan od posluลพitelja u kvaru ili je u fazi odrลพavanja, rezervni posluลพitelj trebao bi biti dostupan za prebacivanje. Rezervni posluลพitelj trebao bi biti u kontinuiranoj replikaciji i sinkronizaciji s glavnim posluลพiteljem.
Izvedba mreลพe
Potrebno je izmjeriti izvedbu aplikacije na razliฤitim mreลพama i svojstva mreลพe.
Za performanse mreลพe provjerit ฤete sljedeฤe stvari.
- Trema: Kada postoji kaลกnjenje u primanju informacija na mreลพi, tada se to naziva podrhtavanjem. To je problem s mreลพama bez povezivanja ili mreลพama s paketnom promjenom. Kako se informacije distribuiraju u pakete, paketi mogu putovati razliฤitim putem od poลกiljatelja do primatelja. Kada podaci stignu na ลพeljenu lokaciju, postaju kodirani nego ลกto su izvorno poslani. U sluฤaju treme, mobilna aplikacija trebala bi biti dovoljno sposobna da se nosi s tim.
Krajnjem korisniku morate prikazati odgovarajuฤe obavijesti, bilo da ponovno poลกalje zahtjev ili priฤeka da sustav ponovno odgovori.
- Izgubljen paket: U sluฤaju potpunog gubitka paketa, aplikacija bi trebala moฤi ponovno poslati zahtjev za informacijama ili bi trebala generirati upozorenja u skladu s tim. Ako podaci nisu potpuni, tada korisnik neฤe moฤi razumjeti informacije prikazane u aplikaciji. Ovo moลพe biti stresno za korisnika. Stoga je bolje prikazati odgovarajuฤu poruku ili pozvati korisnika da pokuลกa ponovno.
- Brzina mreลพe: Aplikaciju je potrebno provjeriti na raznim mreลพama s promjenjivom brzinom. Aplikaciju treba testirati na 3G, 4G i 5G mreลพama. To ukljuฤuje i Wi-Fi i mobilne mreลพe. Takoฤer, treba pratiti ponaลกanje aplikacije, posebno kada su obje mreลพe dostupne i kada se prebacivanje dogodi s jedne mreลพe na drugu.
Na primjer, problem se moลพe pojaviti u aplikaciji za korisnike prilikom prebacivanja telefonske mreลพe s 4G na Wi-Fi i obrnuto. U tom sluฤaju aplikacija prestaje reagirati i moลพda ฤe biti potrebno ponovno pokretanje aplikacije za koriลกtenje.
Rjeลกavanje problema s izvedbom mobilnih aplikacija
Nakon otkrivanja pitanja/problema dok Ispitivanje performansiVrijeme je za trace i ispraviti greลกke.
Problem 1) Kaลกnjenje ili spor odgovor mobilne aplikacije.
Uzrok ovog kaลกnjenja moลพe biti RAM, predmemorija itd.
Morate ubiti nepotrebne procese ili oฤistiti predmemoriju. Rjeลกavanje problema s vezom moลพe rijeลกiti neke od problema koji stvaraju kaลกnjenja
Problem 2) Aplikacija se ponovno pokreฤe, zakljuฤava, zamrzava ili ne reagira.
To se moลพe popraviti nekim od sljedeฤih koraka
- Optimiziranje aplikacijskih kodova
- Softver treba zakrpati i aลพurirati.
- Automatsko vraฤanje
- Upravljanje RAM-om ili u nekim sluฤajevima ROM-om tijekom koriลกtenja vanjskih kartica
- Wiping particioniranje predmemorije
- Provjera rada aplikacije s drugim aplikacijama i API-jima treฤih strana
- Kartaping mobilna aplikacija prema ureฤaju
Korisni alati za testiranje mobilnih aplikacija
Alati za testiranje mobilnih aplikacija razlikuju ovisno o ureฤaju ili mobilnom OS-u. Neki uobiฤajeni alati za testiranje performansi mobilne aplikacije su
ANDROID
- Robotium To je baลก kao Selenium za mobilne aplikacije. Ispitivaฤ moลพe snimiti i reproducirati nekoliko koraka koji su potrebni za izvoฤenje testiranja.
- Majmun Trkaฤ MonkeyRunner moลพe izvoditi testove na stvarnim ureฤajima spojenim na raฤunalo ili emulatore. Alat ima API koji omoguฤuje upravljanje pametnim telefonom, tabletom ili emulatorom izvana Android kodirati.
โ ๏ธ Napomena o verziji: Oboje Android unosi su naslijeฤeni. Robotium nije izdano od 2016. godine, i Google oznaฤava MonkeyRunner neodrลพavanim, upuฤujuฤi timove na UI Automator i njegov uiautomatorviewer inspektor umjesto toga.
APPLE
- automatik (Mac) Automator je aplikacija koju je razvio Apple za macOSImplementira stvaranje tijekova rada metodom "pokaลพi i klikni" (ili "povuci i ispusti") za automatizaciju ponavljajuฤih zadataka u serije radi brลพe izmjene. To ลกtedi vrijeme i trud u odnosu na ljudsku intervenciju koja bi ruฤno mijenjala svaku datoteku zasebno.
Izazovi
Kljuฤni izazovi s kojima se suoฤavaju tijekom testiranja izvedbe ukljuฤuju
- Organiziranje razliฤitih mobilnih platformi i njihovih operativnih sustava
- Simuliranje povezivosti poput 3G, 4G, 5G ili Wi-Fi itd.
- Ograniฤenja mobilnih ureฤaja poput potroลกnje baterije i resursa
- Upotrebljivost mobilnog telefona
- Razliฤite veliฤine mobilnih ureฤaja za pokretanje iste aplikacije
Postavite okruลพenje testiranja performansi mobilne aplikacije
Da biste konfigurirali testno okruลพenje, trebate-
- Razumijevanje mobilne aplikacije koju je potrebno testirati
- Identifikacija razliฤitih OS-a na kojima se aplikacija treba pokrenuti
- Izrada testne postavke
- Izgradite emulatore ili simulatore
- Prototyping stvarne postavke
- Odabir odgovarajuฤeg alata za testiranje
Kontrolni popis za testiranje performansi mobilne aplikacije
Testiranje performansi mobilnih aplikacija vaลพna je mjera prije objavljivanja. Testiranje performansi provodi se radi provjere
- Koliko RAM-a je potrebno za koriลกtenje ove aplikacije?
- Za provjeru brzine i vremena odgovora APP-a u razliฤitim mreลพama i okolnostima.
- Osigurajte realno korisniฤko iskustvo u nekoliko mreลพnih uvjeta
- Osigurajte postizanje traลพenih rezultata u sluฤaju viลกestrukih povezivanja
- Osigurajte da se aplikacija ne sruลกi.
- Osiguravanje dobrog rada mobilnih aplikacija tijekom koriลกtenja podataka, Wi-Fi ili druge veze
- Praฤenje vremena neprekidnog rada i uskih grla u koriลกtenju mobilnog API-ja
- Kako bi se osigurao maksimalan broj istodobnih korisnika
- Na kraju, provjerite mobilnu aplikaciju do njezinih granica

