Testiranje mobilnih aplikacija: uzorci testnih slučajeva i testni scenariji

Često pitanje naših učenika je Kako testirati mobilne aplikacije? U ovom vodiču nudimo primjer testnog scenarija/testnih slučajeva za testiranje mobilne aplikacije.

Možete izvršiti neke ili sve testne slučajeve na temelju vaših zahtjeva za mobilno testiranje. Testni slučajevi organizirani su na temelju vrsta mobilnog testiranja.

Funkcionalno testiranje mobilne aplikacije

Korištenje električnih romobila ističe Funkcionalno testiranje mobilne aplikacije je proces testiranja funkcionalnosti mobilnih aplikacija kao što su interakcije korisnika, kao i testiranje transakcija koje korisnici mogu izvršiti. Glavna svrha funkcionalnog testiranja mobilne aplikacije je osigurati kvalitetu, ispunjavanje zadanih očekivanja, smanjenje rizika ili pogrešaka te zadovoljstvo korisnika.

Različiti čimbenici koji su relevantni u funkcionalnom testiranju su

  1. Vrsta aplikacije koja se temelji na upotrebi poslovne funkcionalnosti (bankarstvo, igranje, društvena ili poslovna)
  2. Target vrsta publike (potrošač, poduzeće, obrazovanje)
  3. Kanal distribucije koji se koristi za širenje aplikacije (npr. Apple App Store, Google play, izravna distribucija)

Funkcionalno testiranje mobilne aplikacije

Najosnovniji testni scenariji u funkcionalnom testiranju mogu se smatrati sljedećim:

  1. Za provjeru rade li sva potrebna obvezna polja kako je potrebno.
  2. Za provjeru jesu li obavezna polja prikazana na ekranu na drugačiji način od neobaveznih polja.
  3. Za provjeru radi li aplikacija prema zahtjevu kad god se aplikacija pokrene/zaustavi.
  4. Za provjeru hoće li aplikacija prijeći u minimizirani način kad god postoji dolazni telefonski poziv. Kako bismo potvrdili isti moramo koristiti drugi telefon, da nazovemo uređaj.
  5. Za provjeru može li telefon pohraniti, obraditi i primiti SMS kad god je aplikacija pokrenuta. Kako bismo potvrdili isti moramo koristiti drugi telefon za slanje sms-a na uređaj koji se testira i na kojem je trenutno pokrenuta aplikacija koja se testira.
  6. Za provjeru je li uređaj u stanju izvršiti zahtijevane zahtjeve višezadaćnosti kad god je to potrebno učiniti.
  7. Kako bismo potvrdili da aplikacija dopušta potrebne opcije društvenih mreža kao što su dijeljenje, objavljivanje i navigacija itd.
  8. Za provjeru podržava li aplikacija sve transakcije pristupnika plaćanja kao što su Visa, Mastercard, Paypal itd. prema zahtjevima aplikacije.
  9. Za provjeru jesu li scenariji pomicanja stranice omogućeni u aplikaciji prema potrebi.
  10. Za provjeru je li navigacija između relevantnih modula u aplikaciji u skladu sa zahtjevima.
  11. Za potvrdu da su pogreške skraćivanja apsolutno do prihvatljive granice.
  12. Da biste potvrdili da korisnik prima odgovarajuću poruku o pogrešci poput "Mrežna pogreška. Molimo pokušajte nakon nekog vremena” kad god se pojavi bilo kakva greška na mreži.
  13. Za provjeru da instalirana aplikacija omogućuje drugim aplikacijama zadovoljavajući rad i ne zadire u memoriju drugih aplikacija.
  14. Za potvrdu da se aplikacija nastavlja pri zadnjoj operaciji u slučaju teškog ponovnog pokretanja ili pada sustava.
  15. Za provjeru može li se instalacija aplikacije obaviti glatko pod uvjetom da korisnik ima potrebne resurse i da to ne dovodi do značajnih pogrešaka.
  16. Za provjeru valjanosti izvršava li aplikacija mogućnost automatskog pokretanja u skladu sa zahtjevima.
  17. Za provjeru radi li aplikacija u skladu sa zahtjevima u svim verzijama Mobilea, odnosno 2g, 3g i 4g.
  18. Izvoditi Ispitivanje regresije za otkrivanje novih softverskih grešaka u postojećim područjima sustava nakon što su u njima napravljene promjene. Također ponovno pokrenite prethodno obavljene testove kako biste utvrdili da se ponašanje programa nije promijenilo zbog promjena.
  19. Za provjeru pruža li aplikacija dostupan korisnički vodič za one koji nisu upoznati s aplikacijom

Testni slučajevi testiranja performansi

Temeljni cilj ove vrste testiranja je osigurati da aplikacija radi prihvatljivo pod određenim zahtjevima performansi kao što je pristup velikog broja korisnika ili uklanjanje ključnog dijela infrastrukture kao što je poslužitelj baze podataka.

Opći testni scenariji za testiranje performansi u mobilnoj aplikaciji su:

  1. Kako bi se utvrdilo radi li aplikacija u skladu sa zahtjevima pod različitim uvjetima opterećenja.
  2. Kako bi se utvrdilo može li trenutna mrežna pokrivenost podržati aplikaciju na vršnoj, prosječnoj i minimalnoj razini korisnika.
  3. Da odredite da li postojeća konfiguracija klijent-poslužitelj pruža potrebnu optimalnu razinu izvedbe.
  4. Identificirati različita uska grla aplikacije i infrastrukture koja sprječavaju rad aplikacije na potrebnim razinama prihvatljivosti.
  5. Za provjeru je li vrijeme odgovora aplikacije u skladu sa zahtjevima.
  6. Za procjenu proizvoda i/ili hardvera kako bi se utvrdilo može li podnijeti predviđene količine opterećenja.
  7. Za procjenu može li trajanje baterije podržati rad aplikacije pod predviđenim količinama opterećenja.
  8. Za provjeru performansi aplikacije kada se mreža promijeni u WIFI s 2G/3G ili obrnuto.
  9. Da bi se potvrdio svaki od potrebnih CPU ciklus je optimizacija
  10. Kako bismo potvrdili da su potrošnja baterije, curenje memorije, resursi poput GPS-a, izvedba kamere unutar potrebnih smjernica.
  11. Za provjeru dugovječnosti aplikacije kad god je korisničko opterećenje rigorozno.
  12. Za provjeru performansi mreže dok se krećete s uređajem.
  13. Za provjeru izvedbe aplikacije kada su potrebne samo povremene faze povezivanja.

Testni slučajevi sigurnosnog testiranja

Testni slučajevi sigurnosnog testiranja

Temeljni cilj sigurnosnog testiranja je osigurati da su zahtjevi aplikacije za sigurnost podataka i mreže ispunjeni prema smjernicama.

Sljedeća su najvažnija područja za provjeru sigurnosti mobilnih aplikacija.

  1. Za provjeru je li aplikacija u stanju izdržati svaki napad brutalnom silom koji je automatizirani proces pokušaja i pogrešaka koji se koristi za pogađanje korisničkog imena, lozinke ili broja kreditne kartice osobe.
  2. Za provjeru valjanosti ne dopušta li aplikacija napadaču pristup osjetljivom sadržaju ili funkciji bez odgovarajuće provjere autentičnosti.
  3. Za potvrdu da aplikacija ima jak sustav zaštite lozinkom i da ne dopušta napadaču da dobije, promijeni ili povrati lozinku drugog korisnika.
  4. Za potvrdu da aplikacija ne pati od nedovoljnog isteka sesije.
  5. Identificirati dinamičke ovisnosti i poduzeti mjere za sprječavanje bilo kojeg napadača da pristupi tim ranjivostima.
  6. Za sprječavanje od SQL napade povezane s injekcijom.
  7. Za prepoznavanje i oporavak od scenarija neupravljanog koda.
  8. Da biste provjerili jesu li certifikati provjereni, implementira li aplikacija prikvačivanje certifikata ili ne.
  9. Za zaštitu aplikacije i mreže od napada uskraćivanjem usluge.
  10. Za analizu zahtjeva za pohranu podataka i provjeru valjanosti podataka.
  11. Omogućiti upravljanje sesijom za sprječavanje neovlaštenih korisnika da pristupe neželjenim informacijama.
  12. Da provjerite je li neki kriptografski kod pokvaren i osigurate da je popravljen.
  13. Za provjeru je li implementacija poslovne logike sigurna i nije ranjiva na napade izvana.
  14. Za analizu interakcija datotečnog sustava, utvrdite sve ranjivosti i ispravite te probleme.
  15. Za provjeru valjanosti rukovatelja protokolom, na primjer, pokušaj ponovnog konfiguriranja zadane odredišne ​​stranice za aplikaciju pomoću zlonamjernog iframea.
  16. Za zaštitu od zlonamjernih ubacivanja na strani klijenta.
  17. Za zaštitu od zlonamjernih ubacivanja u vrijeme izvođenja.
  18. Za istraživanje predmemoriranja datoteka i sprječavanje zlonamjernih mogućnosti iz istih.
  19. Za sprječavanje nesigurnog pohranjivanja podataka u predmemoriju tipkovnice aplikacija.
  20. Za istraživanje kolačića i sprječavanje zlonamjernih radnji kolačića.
  21. Osigurati redovite revizije za analizu zaštite podataka.
  22. Istražite prilagođeno stvorene datoteke i spriječite zlonamjerna djela iz prilagođeno stvorenih datoteka.
  23. Za sprječavanje prekoračenja međuspremnika i slučajeva oštećenja memorije.
  24. Za analizu različitih tokova podataka i sprječavanje bilo kakve ranjivosti u njima.

Testni slučajevi testiranja upotrebljivosti

Testni slučajevi testiranja upotrebljivosti

Proces testiranja upotrebljivosti mobilne aplikacije provodi se kako bi se dobila brza i jednostavna aplikacija s manje funkcionalnosti od spore i teške aplikacije s mnogo značajki. Glavni cilj je osigurati da na kraju imamo sučelja jednostavna za korištenje, intuitivna i slična industrijski prihvaćenim sučeljima koja se široko koriste.

  1. Kako bi se osiguralo da gumbi trebaju imati potrebnu veličinu i biti prikladni za velike prste.
  2. Kako bi se osiguralo da su gumbi smješteni u istom dijelu zaslona kako bi se izbjegla zabuna kod krajnjih korisnika.
  3. Kako bi se osiguralo da su ikone prirodne i u skladu s aplikacijom.
  4. Kako biste osigurali da gumbi, koji imaju istu funkciju, također trebaju imati istu boju.
  5. Kako bi se osiguralo da bi trebala biti omogućena provjera valjanosti za mogućnosti povećavanja i smanjivanja dodirom.
  6. Kako bi se osiguralo da se unos tipkovnice može minimizirati na odgovarajući način.
  7. Kako bi se osiguralo da aplikacija nudi metodu za povratak ili poništavanje radnje, pri dodirivanju pogrešne stavke, unutar prihvatljivog trajanja.
  8. Kako bi se osiguralo da kontekstualni izbornici nisu preopterećeni jer se moraju brzo koristiti.
  9. Kako bi se osiguralo da tekst bude jednostavan i jasan kako bi bio vidljiv korisnicima.
  10. Kako bi se osiguralo da su kratke rečenice i odlomci čitljivi krajnjim korisnicima.
  11. Kako biste bili sigurni da je veličina fonta dovoljno velika da bude čitljiva, a ne prevelika ili premala.
  12. Za provjeru valjanosti aplikacije traži se od korisnika svaki put kada korisnik počne preuzimati veliku količinu podataka što možda neće pogodovati radu aplikacije.
  13. Za potvrdu je li zatvaranje aplikacije izvršeno iz različitih stanja i provjeru otvara li se ponovno u istom stanju.
  14. Kako bi se osiguralo da su svi nizovi pretvoreni u odgovarajuće jezike kad god je dostupno prevođenje jezika.
  15. Kako bi se osiguralo da su stavke aplikacije uvijek sinkronizirane u skladu s radnjama korisnika.
  16. Kako bi se osiguralo da krajnji korisnik dobije korisnički priručnik koji krajnjem korisniku pomaže razumjeti i upravljati aplikacijom koji možda nije upoznat s postupkom aplikacije

Testiranje upotrebljivosti obično provode ručni korisnici jer samo ljudska bića mogu razumjeti osjetljivost i sposobnost udobnosti drugih korisnika.

Testni slučajevi za testiranje kompatibilnosti

Testiranje kompatibilnosti na mobilnim uređajima provodi se kako bi se osiguralo da budući da mobilni uređaji imaju različite veličine, razlučivosti, zaslon, verziju i hardver, aplikaciju treba testirati na svim uređajima kako bi se osiguralo da aplikacija radi kako želite.

Sljedeća su najistaknutija područja za testiranje kompatibilnosti.

  1. Kako bi se potvrdilo da korisničko sučelje aplikacije odgovara veličini zaslona uređaja, nijedan tekst/kontrola nije djelomično nevidljiv ili nedostupan.
  2. Kako bi se osiguralo da je tekst čitljiv svim korisnicima aplikacije.
  3. Kako bi se osiguralo da je funkcija poziva/alarma omogućena kad god je aplikacija pokrenuta. Aplikacija se minimizira ili obustavlja u slučaju poziva, a zatim kad god poziv prestane, aplikacija se nastavlja.

Ispitni slučajevi testiranja nadoknadivosti

  1. Oporavak od pada i prekidi transakcija
  2. Validacija situacije učinkovitog oporavka aplikacije nakon neočekivanih scenarija prekida/pada.
  3. Provjera načina na koji aplikacija obrađuje transakciju tijekom nestanka struje (npr. pražnjenje baterije ili iznenadno ručno isključivanje uređaja)
  4. Validaciju procesa u kojem je veza obustavljena, sustav treba ponovno uspostaviti za oporavak podataka na koje je izravno utjecala obustavljena veza. Korištenje prava mobilni alati za testiranje može pomoći u osiguravanju besprijekornog procesa oporavka.

Važna kontrolna lista

  1. Testiranje instalacije (može li se aplikacija instalirati u razumnom roku i uz traženi kriterij)
  2. Testiranje deinstalacije (može li se aplikacija deinstalirati u razumnom roku i uz traženi kriterij)
  3. Slučajevi testiranja mreže (provjera radi li mreža pod potrebnim opterećenjem ili ne, može li mreža podržati sve potrebne aplikacije tijekom postupaka testiranja)
  4. Provjerite nemapirane ključeve
  5. Provjerite početni zaslon aplikacije
  6. Nastavak unosa tipkovnicom tijekom prekida i drugih situacija poput problema s mrežom
  7. Metode koje se bave izlaskom iz aplikacije
  8. Učinak punjača dok aplikacija radi u pozadini
  9. Slaba baterija i visoki zahtjevi za performansama
  10. Uklanjanje baterije dok se aplikacija izvodi
  11. Potrošnja baterije prema aplikaciji
  12. Provjerite nuspojave aplikacije