Što je iOS App testiranje?
iOS App Test je postupak testiranja u kojem se iOS aplikacija testira na stvarnim Apple uređajima kako bi se provjerilo radi li prema očekivanjima za određene radnje korisnika poput vremena instalacije, korisničkog sučelja, korisničkog iskustva, izgleda, ponašanja, funkcionalnosti, vremena učitavanja, performanse, unos u App Store, podrška za verzije OS-a itd.
Zašto testiranje iOS aplikacija?
Testiranje aplikacija za iOS potrebno je jer je iOS Appleova platforma za mobilne aplikacije koja je objavljena 29. lipnja 2007. Za razliku od Androida, Apple ne licencira iOS za instalaciju na hardver koji nije Apple. iOS i iOS aplikacije mogu se instalirati samo na Apple uređajima, stoga vaša iOS aplikacija mora biti kompatibilna s iOS verzijama i iOS uređajima.
To je često pitanje kada programer kreira iOS aplikaciju.
Nije važno koliko vremena ulažete u dizajn i implementaciju, pogreške su neizbježne i pojavit će se pogreške. Postoje neke uobičajene pogreške u iOS aplikaciji. Kao što je prikazano na donjoj slici.
- Aplikacija se ruši
Jedan od najfrustriranijih problema prilikom upotrebe Appleovih uređaja je taj što se aplikacija može često srušiti tijekom izvršavanja. Mnogo se puta aplikacija ruši jer u aplikacijama ima nekih bugova ili curenja memorije.
- Nespojivosti aplikacija
Vaša se iOS aplikacija može savršeno izvoditi na trenutnoj verziji iOS-a, ali ako se iOS nadogradi, možda neće raditi zbog problema s nekompatibilnošću.
- Sigurnosna ranjivost
Sigurnosna ranjivost u iOS-u omogućuje hakeru da napada vaše iOS uređaje i krade vaše privatne podatke. Do sada su se ozbiljne sigurnosne ranjivosti iPhonea otkrivale u različitim verzijama iOS-a.
- Curenje memorije
Curenje memorije su blokovi dodijeljene memorije koje program više ne koristi. Curenje memorije uzrokuje pad sustava iOS. Oni su bugovi i uvijek ih treba popraviti.
U ovom vodiču naučit ćete-
- Zašto iOS testiranje?
- iOS testiranje MindMap
- Kontrolni popis za testiranje iOS-a
- iOS strategija testiranja
- Automatizirano ispitivanje
- Jedinstveno testiranje s OCUnit
- Testiranje korisničkog sučelja s UIAutomatizacijom
- Ručno ispitivanje
- Istraživačko ispitivanje
- Korisničko testiranje
- Testiranje koncepta
- Ispitivanje upotrebljivosti
- Beta testiranje
- A / B testiranje
- iOS testiranje Najbolja praksa
- MITOVI o iOS testiranju
iOS testiranje MindMap
Kao što je prikazano na gornjoj slici, iOS testiranje MindMap prikazuje sve stavke koje bi ispitivač trebao uzeti u obzir prilikom provođenja testiranja na iOS-u.
Kontrolni popis za testiranje aplikacija za iOS
Ovaj je kontrolni popis posebno dizajniran za testiranje karakteristika iOS mobilnih aplikacija. Očito je da testira samo generičke karakteristike aplikacije, a ne i njihovu funkcionalnost.
- Provjerite vrijeme instalacije koje je aplikacija uzela na uređaj. Provjerite je li aplikacija instalirana u prihvatljivom roku.
- Nakon što se aplikacija instalira, provjerite ima li aplikacija ikonu i ime aplikacije. Također, pobrinite se da i ikona i ime sami po sebi odražavaju osnovnu namjeru aplikacije.
- Pokrenite aplikaciju i provjerite prikazuje li se početni zaslon.
- Provjerite vremensko ograničenje početnog zaslona i vrijeme potrebno za učitavanje početnog zaslona. Početni zaslon aplikacije trebao bi se učitati u prihvatljivom vremenu. Ako učitavanju početnog zaslona treba samo više vremena, tada postoji veća šansa da korisnik napusti ili čak deinstalira sam program. Također provjerite kako se sadržaj učitava na početnom zaslonu.
- Glavna funkcija aplikacije trebala bi biti odmah vidljiva. To bi trebalo govoriti samo za sebe.
- Provjerite podržava li aplikacija i vodoravnu i uspravnu orijentaciju. Ako je to slučaj, provjerite aplikaciju u obje orijentacije. Korisničko sučelje aplikacije trebalo bi se postaviti u skladu s tim.
- Bez internetske veze pokrenite aplikaciju. Pazite da se aplikacija ponaša kako je dizajnirana / željena. Postoji vjerojatnost da se aplikacija može srušiti pri pokretanju ili da prikaže prazan zaslon.
- Ako aplikacija koristi usluge lokacije, provjerite prikazuje li se upozorenje za dozvolu lokacije. Ovo upozorenje treba zatražiti od korisnika samo jednom.
- Ako aplikacija šalje push obavijesti, provjerite prikazuje li se upozorenje za dozvolu push obavijesti. Ovo upozorenje treba zatražiti od korisnika samo jednom.
- Pokrenite aplikaciju, zatvorite je i pokrenite ponovo. Provjerite ponaša li se aplikacija kako je dizajnirana / željena
- Zatvorite aplikaciju tapkajući tipku Početna na uređaju i ponovo je otvorite. Provjerite radi li aplikacija onako kako je dizajnirana / željena.
- Jednom instalirana, provjerite je li aplikacija navedena u aplikaciji iPhone postavki.
- Nakon što se aplikacija pokrene uživo, provjerite može li se aplikacija pronaći u "App Store." Bit će podržana verzija OS-a za aplikaciju. Dakle, pobrinite se da se aplikacija može naći u "App Store" tih podržanih verzija verzije OS-a. Također, aplikacija se ne bi trebala nalaziti na popisu nepodržanih verzija verzije OS-a u "App Storeu".
- Provjerite ide li aplikacija u stanje mirovanja kada radi u pozadini kako biste spriječili pražnjenje baterije.
- Ako je izvedba aplikacije spora ili kad se sadržaj učitava, provjerite postoji li ikona statusa napretka ("Učitavanje ..."), po mogućnosti s određenom porukom.
- Pretražite aplikaciju s njenim nazivom na traci za pretraživanje uređaja. Provjerite je li aplikacija navedena
- Provjerite nije li izgled gumba koji izvršavaju standardne radnje promijenjen u aplikaciji (na primjer: osvježavanje, organiziranje, otpad, odgovor, povratak itd.)
- Provjerite koriste li se standardni gumbi za druge funkcije u odnosu na one za koje se inače koriste
iOS strategija testiranja
Sljedeća slika predstavlja neke uobičajene vrste iOS strategije testiranja.
Automatizirano ispitivanje
Automatizirano testiranje je većina prednosti iOS testiranja. Omogućuje vam brzo otkrivanje grešaka i problema s performansama. Prednosti automatiziranog testiranja kao što je prikazano u nastavku:
- Automatsko testiranje može se izvoditi na više uređaja, štedeći vaše vrijeme
- Automatizirano testiranje može ciljati SDK-ove. Možete pokrenuti test na različitim verzijama SDK-a
- Automatizirano testiranje povećava vašu produktivnost testiranja, štedi vaše troškove razvoja softvera
- Postoje mnogi okviri za testiranje otvorenog koda koji podržavaju automatizirano testiranje na iOS-u
Jedinstveno testiranje s OCUnit
Kada je objavljen originalni iOS SDK, nedostajale su mogućnosti jedinstvenog testiranja. Tako je Apple vratio OCUnit jedinstveno rješenje za testiranje u iOS SDK verziji 2.2.
OCUnit je testni okvir za C-Objective u Mac OS-u. Najveće prednosti OCUnit okvira su uska integracija u razvojno okruženje XCode kako je prikazano u nastavku.
Neke od blagodati OCUnit-a prikazane su na donjoj slici.
Testiranje korisničkog sučelja s UIAutomatizacijom
UI Automation je JavaScript knjižnica koju pruža Apple Inc, a koja se može koristiti za automatsko testiranje na stvarnim uređajima i na iOS Simulatoru. Ovaj je okvir dodan iOS SDK4.0. Koristeći UI Automation, možete automatizirati testiranje aplikacije ne samo na simulatoru već i na stvarnom uređaju.
UIAutomation vam donosi ove prednosti:
- Smanjite napor na ručnom testiranju
- Upotrijebite manje memorije za izvršavanje svih testova
- Pojednostavite postupak testiranja korisničkog sučelja (samo pritisnite jedan ili tri gumba i pokrenite pune testne pakete)
UIAutomation instrument radi iz skripti koje su napisane na JavaScript-u. Simulira korisničke događaje u ciljanoj iOS aplikaciji.
UIAutomation Cons vs. Pros
Pros | Protiv | |
---|---|---|
1. | Dobra podrška za gestu i rotaciju | To nije otvoreni izvor, manje podrške programera |
2. | Može izvoditi UIAutomation testove na uređaju, a ne jedini simulator. | Ne mogu se izvrsno integrirati s drugim alatima |
3. | Razvio ga je JavaScript, popularan je programski jezik. |
Gornja slika predstavlja neke uobičajene klase u okviru UIAutomation.
- UIAElement klasa je super klasa za sve elemente korisničkog sučelja u kontekstu automatizacije
- UIATarget klasa predstavlja visokoj razini korisničkog sučelja elemenata sustava koji se testira
- UIALogger klasa pruža testiranje i pogreške informacije o dohvat funkcionalnosti
- UIAActivityView klasa omogućuje pristup i kontrolu, pogled na aktivnosti unutar aplikacije.
- UIAActionSheet klasa omogućuje pristup i kontrolu, akcijske listova unutar aplikacije.
- Akcija korisničkog događaja
- Klasa UISlider
- UIAButton klasa
- Klasa UIAKey
- Predavanje UIAKeyboard
Ostali automatizirani okviri za ispitivanje
- MonkeyTalk: Alat za automatizirano testiranje iOS, Android, HTML5 i Adobe aplikacija. To je integrirano okruženje za upravljanje i pokretanje testova
- Frank: Okvir za automatizirano prihvaćanje za iPhone i iPad
- KIF: je testni okvir za integraciju s iOS-om . Omogućuje jednostavnu automatizaciju iOS aplikacija iskorištavanjem atributa pristupačnosti koje OS čini dostupnima onima s oštećenjima vida.
Ručno ispitivanje
Istraživačko ispitivanje
To je testiranje bez formalnog plana ispitivanja. Istraživačko testiranje metoda je niske cijene, ali može propustiti potencijalne pogreške u vašoj iOS aplikaciji.
Protiv istraživačkog testiranja protiv prednosti
Pros | Protiv | |
---|---|---|
1. | Potrebna je manje priprema, rano otkrivanje ozbiljnih bugova. | Zahtijeva visoku vještinu testera |
2. | Ne treba plan testiranja da ubrza otkrivanje grešaka. | Pokrivenost testom je niska. Ne garantira da su svi vaši zahtjevi testirani. |
3. | Većina bugova otkrije se rano nekakvim istraživačkim ispitivanjem | Nedostatak ispitne dokumentacije |
Korisničko testiranje
Korisničko testiranje vrsta je ručnog testiranja na iOS-u. Svrha ovog testiranja je stvaranje boljih aplikacija, ne samo aplikacija bez grešaka . Ispod slike prikazane su četiri vrste korisničkog testiranja
Testiranje koncepta
Procijenite odgovor korisnika na ideju aplikacije prije puštanja na tržište. Postupci testiranja koncepata na iOS-u opisani su na sljedeći način
Ispitivanje upotrebljivosti
Testiranje upotrebljivosti test je koliko je lako koristiti vaš iOS program. U iOS testiranju mogao bi se snimiti test upotrebljivosti kako bi se pamtio ili podijelio s drugima.
Postoje neki alati koji podržavaju testiranje upotrebljivosti na iOS-u.
Magitest, jednostavno testiranje upotrebljivosti iOS-a za web lokacije i aplikacije.
Delight.io, ovaj alat može zabilježiti stvarnu korisničku interakciju na vašim iOS aplikacijama.
Beta testiranje
Beta testiranje je integracijsko testiranje sa stvarnim podacima kako bi se dobile konačne povratne informacije od korisnika. Da biste distribuirali svoje aplikacije za beta testiranje, morate slijediti korake u nastavku.
- Preduvjet : Ako beta testirate konačnog kandidata za izdanje, provjerite valjanost aplikacije prije nego što je distribuirate testerima.
- Pronađite tester putem usluge : prikupljate ID-ove uređaja od testera i dodajete ih u Centar za članove
- Stvorite ad-hoc distribuciju : Ad Hoc distribucija omogućava testeru da pokreće vašu aplikaciju na svom uređaju bez potrebe za Xcodeom. Ovaj korak uključuje 2 potkoraka
- Stvorite distribucijske certifikate
- Stvorite Ad-hoc profile osiguranja
- Zatražite povratne informacije od testera: Tester provedi testiranje i pošaljite vam izvješća o greškama. Nakon izdavanja aplikacije, izvješća možete dobiti s iTunes connect.
A / B testiranje
A / B testiranje jedan je od najsnažnijih načina za procjenu učinkovitosti vaše iOS aplikacije . Koristi randomizirane eksperimente s dva uređaja, A i B.
A / B testiranje uključuje tri glavna koraka
- Konfiguriranje testa : Pripremljene su 2 verzije vaše iOS aplikacije (A & B) i testna metrika
- Test : Istodobno testirajte 2 verzije iOS aplikacija na istim uređajima.
- Analizirajte : izmjerite i odaberite bolju verziju za objavljivanje
Sljedeći alati podržavaju A / B testiranje na iOS-u.
- Ustani: A / B testiranje za iOS i Android. Može se integrirati u vašu iOS aplikaciju i ubrzati postupak testiranja.
Najbolji primjeri za A / B testiranje
- Definirajte cilj svog testa. Bilo koji test je beskoristan bez cilja.
- Pogledajte kako prvi put korisnici upotrebljavaju vašu aplikaciju
- Pokrenite samo jedan test po ažuriranju. Štedi vam vrijeme prilikom provođenja testiranja
- Pažljivo pratite test. Iz svog testa možete naučiti iskustva prateći ga.
iOS testiranje Najbolja praksa
Evo nekoliko savjeta koje biste trebali znati prilikom organiziranja testiranja svoje iOS aplikacije
- Testirajte aplikaciju na stvarnom uređaju da biste saznali više o izvedbi
- Poboljšajte svoje metode ispitivanja, jer tradicionalne metode ispitivanja više nisu dovoljne za pokrivanje svih testova na iOS testiranju
- Upotreba dnevnika konzole za testiranje iOS aplikacije. Ovo je iOS značajka koja uključuje podatke iz svake aplikacije na uređaju.
- Dokumentovane programske pogreške pomoću ugrađene kratke naredbe zaslona . Pomaže programeru da shvati kako se javljaju bugovi.
- Izvještavanje o padu korisni su alati prilikom testiranja aplikacije. Mogu otkriti padove i detalje dnevnika, tako da možete lako istražiti greške.
MITOVI o iOS testiranju
Ovaj odjeljak ispituje nekoliko popularnih mitova i stvarnosti iOS testiranja
Aplikacija za testiranje na iOS-u i Androidu ista su stvar.
iOS i Android dvije su platforme koje su razvili Apple Inc i Google. Potpuno su različiti. Itd. Test okruženja, test okviri, programski jezici.
Dovoljna je testna aplikacija na iOS Simulatoru.
iOS Simulator nije dovoljno jak za testiranje aplikacije. Budući da iOS Simulator ima neka ograničenja:
- Hardverska ograničenja (kamera, ulaz za mikrofon, senzor)
- Čini se da korisničko sučelje vaše aplikacije radi brže i uglađenije nego na uređaju
- API ograničenja
- Neki okviri nisu podržani (Media Player, Store Kit, korisničko sučelje za poruke ...)
Svi će preuzeti moje aplikacije u trgovini aplikacija, jer ima mnogo značajki
Što više funkcija ima vaša aplikacija, mogli biste dobiti više bugova. Niti jedan korisnik neće preuzeti vašu aplikaciju ako još uvijek ima mnogo nedostataka.