Čo je testovanie aplikácií pre iOS?
Testovanie aplikácií pre iOS je testovací proces, pri ktorom sa testuje aplikácia pre iOS na skutočných zariadeniach Apple, aby sa skontrolovalo, či funguje podľa očakávania alebo nie, pokiaľ ide o konkrétne akcie používateľa, ako je čas inštalácie, používateľské rozhranie, používateľská skúsenosť, vzhľad, správanie, funkčnosť, doba načítania, výkon, zoznam App Store, podpora verzií OS atď.
Prečo testovanie aplikácií pre iOS?
Testovanie aplikácií pre iOS je povinné, pretože iOS je platforma spoločnosti Apple pre mobilné aplikácie, ktorá bola vydaná 29. júna 2007. Na rozdiel od Androidu Apple nelicencová iOS pre inštaláciu na hardvér od iného výrobcu ako Apple. Aplikácie pre iOS a iOS je možné inštalovať iba na zariadenia Apple, preto musí byť vaša aplikácia pre iOS kompatibilná s verziami iOS a zariadeniami so systémom iOS.
Toto je častá otázka, keď vývojár vytvorí aplikáciu pre iOS.
Nezáleží na tom, koľko času investujete do návrhu a implementácie, chyby sú nevyhnutné a objavia sa chyby. V aplikácii pre iOS sú niektoré bežné chyby. Ako je znázornené na nasledujúcom obrázku.
- Zrútenie aplikácie
Jedným z najviac frustrujúcich problémov pri používaní zariadení spoločnosti Apple je to, že počas vykonávania môže často dôjsť k zlyhaniu aplikácie. Aplikácia mnohokrát zlyhá, pretože v aplikáciách dochádza k niektorým chybám alebo úniku pamäte.
- Nekompatibilita aplikácie
Vaša aplikácia pre iOS môže fungovať perfektne v aktuálnej verzii iOS, ale ak je iOS inovovaný, nemusí fungovať kvôli problémom s nekompatibilitou.
- Zraniteľnosť zabezpečenia
Zraniteľnosť zabezpečenia v systéme iOS umožňuje hackerovi napadnúť vaše zariadenia so systémom iOS a ukradnúť vaše súkromné informácie. Až doteraz boli v rôznych verziách systému iOS objavené závažné chyby zabezpečenia zariadenia iPhone.
- Úniky pamäte
Úniky pamäte sú bloky pridelenej pamäte, ktoré program už nepoužíva. Úniky pamäte spôsobujú zlyhanie vašej aplikácie pre iOS. Sú to chyby a mali by byť vždy opravené.
V tomto návode sa naučíte
- Prečo testovanie na iOS?
- Testovanie MindMap pre iOS
- Kontrolný zoznam na testovanie iOS
- Stratégia testovania iOS
- Automatizované testovanie
- Testovanie jednotiek pomocou OCUnit
- Testovanie UI s UIAutomation
- Ručné testovanie
- Prieskumné testovanie
- Testovanie používateľov
- Koncepčné testovanie
- Testovanie použiteľnosti
- Beta testovanie
- A / B testovanie
- Osvedčené postupy pre testovanie na iOS
- MYTHS o testovaní iOS
Testovanie MindMap pre iOS
Ako je znázornené na vyššie uvedenom obrázku, program iOS Testing MindMap zobrazuje všetky položky, ktoré by mal tester brať do úvahy pri vykonávaní testovania v systéme iOS.
Kontrolný zoznam na testovanie aplikácií pre iOS
Tento kontrolný zoznam je špeciálne navrhnutý na testovanie charakteristík mobilných aplikácií pre iOS. Je zrejmé, že testuje iba všeobecné vlastnosti aplikácie, a nie jej funkčnosť.
- Skontrolujte čas potrebný na inštaláciu aplikácie do zariadenia. Uistite sa, že je aplikácia nainštalovaná v prijateľnom čase.
- Po nainštalovaní aplikácie skontrolujte, či má ikona a názov aplikácie. Uistite sa tiež, že ikona aj názov sú samovysvetľujúce a odzrkadľujú hlavný zámer aplikácie.
- Spustite aplikáciu a skontrolujte, či sa zobrazuje úvodná obrazovka.
- Skontrolujte časový limit úvodnej obrazovky a čas potrebný na načítanie domovskej obrazovky. Domovská obrazovka aplikácie by sa mala načítať v prijateľnom čase. Ak načítanie Domovskej obrazovky trvá dlhšie, potom existuje väčšia šanca pre používateľa ukončiť alebo dokonca odinštalovať samotnú aplikáciu. Skontrolujte tiež to, ako je obsah načítaný na domovskej obrazovke.
- Hlavná funkcia aplikácie by mala byť zrejmá okamžite. Malo by to hovoriť samo za seba.
- Skontrolujte, či aplikácia podporuje orientáciu na šírku aj na výšku. Ak je to tak, skontrolujte aplikáciu v oboch smeroch. Podľa toho by sa malo nastaviť používateľské rozhranie aplikácie.
- Bez pripojenia na internet spustite aplikáciu. Zaistite, aby sa aplikácia chovala tak, ako bola navrhnutá / požadovaná. Je pravdepodobné, že aplikácia môže pri jej spustení zlyhať alebo môže iba zobraziť prázdnu obrazovku.
- Ak aplikácia využíva lokalizačné služby, skontrolujte, či sa zobrazuje alebo nezobrazuje varovanie o povolení polohy. Toto varovanie by sa malo používateľovi zobraziť iba raz.
- Ak aplikácia odosiela upozornenia push, skontrolujte, či sa zobrazuje alebo nezobrazuje upozornenie na povolenie push upozornení. Toto varovanie by sa malo používateľovi zobraziť iba raz.
- Spustite aplikáciu, ukončite ju a znova spustite. Skontrolujte, či sa aplikácia správa podľa očakávania
- Zatvorte aplikáciu klepnutím na tlačidlo Domov na zariadení a znova ju otvorte. Skontrolujte, či aplikácia funguje tak, ako bola navrhnutá / požadovaná.
- Po nainštalovaní skontrolujte, či je aplikácia uvedená v aplikácii nastavení iPhone.
- Po zverejnení aplikácie skontrolujte, či ju nájdete v obchode „App Store.“ Pre aplikáciu bude k dispozícii podporovaná verzia operačného systému. Uistite sa, že ju nájdete v obchode App Store s podporovanou verziou operačného systému. Aplikácia by tiež nemala byť uvedená v „App Store“ zariadenia s nepodporovanou verziou OS.
- Skontrolujte, či aplikácia prechádza do režimu spánku, keď je spustená na pozadí, aby sa zabránilo vybitiu batérie.
- Ak je výkon aplikácie pomalý alebo pri každom načítaní obsahu, skontrolujte, či existuje ikona stavu postupu („Načítava sa…“), najlepšie s konkrétnou správou.
- Vyhľadajte aplikáciu s jej názvom na vyhľadávacom paneli zariadenia. Skontrolujte, či je aplikácia uvedená v zozname
- Skontrolujte, či sa v aplikácii nemení vzhľad tlačidiel, ktoré vykonávajú štandardné akcie (napríklad: obnovenie, usporiadanie, vyhodenie do koša, odpoveď, späť atď.)
- Skontrolujte, či sa štandardné tlačidlá nepoužívajú na iné funkcie, ako na ktoré sa bežne používajú
Stratégia testovania iOS
Nasledujúci obrázok predstavuje niektoré bežné typy testovacej stratégie iOS.
Automatizované testovanie
Automatické testovanie je najdôležitejšou výhodou testovania na iOS. Umožňuje vám rýchlo zistiť chyby a problémy s výkonom. Výhody automatizovaného testovania sú uvedené nižšie:
- Automatizované testovanie môže prebiehať na viacerých zariadeniach, čo šetrí váš čas
- Automatizované testovanie môže zacieliť na súpravy SDK. Môžete spustiť test na rôznych verziách SDK
- Automatizované testovanie zvyšuje vašu produktivitu testovania a šetrí vaše náklady na vývoj softvéru
- Existuje mnoho testovacích rámcov otvoreného zdroja, ktoré podporujú automatizované testovanie v systéme iOS
Testovanie jednotiek pomocou OCUnit
Keď bola vydaná pôvodná sada iOS SDK, chýbali jej možnosti testovania jednotiek. Apple teda priniesol späť testovacie riešenie jednotky OCUnit v iOS SDK verzie 2.2.
OCUnit je testovací rámec pre C-Objective v systéme Mac OS. Najväčšími výhodami rámca OCUnit sú úzka integrácia do vývojového prostredia XCode, ako je uvedené nižšie.
Niektoré z výhod OCUnit sú uvedené na nasledujúcom obrázku.
Testovanie UI s UIAutomation
UI Automation je knižnica JavaScriptu poskytovaná spoločnosťou Apple Inc, ktorú je možné použiť na vykonanie automatizovaného testu na skutočných zariadeniach a na simulátore iOS. Tento rámec je pridaný do iOS SDK4.0. Pomocou automatizácie používateľského rozhrania môžete automatizovať testovanie aplikácie nielen na simulátore, ale aj na skutočnom zariadení.
UIAutomation vám prináša tieto výhody:
- Znížte úsilie pri manuálnom testovaní
- Na vykonanie všetkých svojich testov využite menej pamäte
- Zjednodušte postup testovania používateľského rozhrania (stačí stlačiť jedno alebo tri tlačidlá a spustiť všetky testovacie sady).
Nástroj UIAutomation pracuje zo skriptov napísaných v JavaScripte. Simuluje udalosti používateľov v cieľovej aplikácii pre iOS.
Nevýhody automatizácie UIA vs.
Pros | Zápory | |
---|---|---|
1. | Dobrá podpora pre gesto a rotáciu | Nie je to otvorený zdroj, menšia podpora zo strany vývojára |
2. | Dokáže spustiť testy UIAutomation na zariadení, nielen v simulátore. | Nedá sa veľmi dobre integrovať do iných nástrojov |
3. | Vyvinutý pomocou JavaScriptu je to populárny programovací jazyk. |
Vyššie uvedený obrázok predstavuje niektoré bežné triedy v rámci UIAutomation.
- Trieda UIAElement je nadradenou triedou pre všetky prvky používateľského rozhrania v kontexte automatizácie
- Trieda UIATarget predstavuje prvky používateľského rozhrania na vysokej úrovni testovaného systému
- Trieda UIALogger poskytuje testovacie a chybové informácie o funkcii načítania
- Trieda UIAActivityView umožňuje prístup a kontrolu nad zobrazeniami aktivity vo vašej aplikácii.
- Trieda UIAActionSheet umožňuje prístup k hárkom akcií vo vašej aplikácii a ich kontrolu.
- Akcia udalosti používateľa
- Trieda UISlider
- Trieda UIAButton
- UIAKey trieda
- Trieda UIAKeyboard
Ostatné automatizované testovacie rámce
- MonkeyTalk: Nástroj na automatizované testovanie aplikácií pre iOS, Android, HTML5 a Adobe. Jedná sa o integrované prostredie pre správu a spustenie testovacích balíkov
- Frank: Rámec automatizovaného prijímacieho testu pre iPhone a iPad
- KIF: je rámec pre testovanie integrácie so systémom iOS . Umožňuje ľahkú automatizáciu aplikácií pre iOS využitím atribútov prístupnosti, ktoré OS sprístupňuje osobám so zrakovým postihnutím.
Ručné testovanie
Prieskumné testovanie
Jedná sa o testovanie bez formálneho plánu testovania. Prieskumné testovanie je nízkonákladová metóda testovania, môžu vám však chýbať potenciálne chyby vo vašej aplikácii pre iOS.
Prieskumné nevýhody testovania vs. klady
Pros | Zápory | |
---|---|---|
1. | Je potrebná menšia príprava, včasné odhalenie závažných chýb. | Vyžaduje vysokú zručnosť testera |
2. | Nepotrebujete testovací plán na urýchlenie detekcie chyby. | Pokrytie testu je nízke. Nezaručuje, že sú splnené všetky vaše požiadavky. |
3. | Väčšina chýb je objavená skoro nejakým prieskumným testovaním | Nedostatok testovacej dokumentácie |
Testovanie používateľov
Používateľské testovanie je typom manuálneho testovania v systéme iOS. Účelom tohto testovania je vytvoriť lepšie aplikácie, nielen aplikácie bez chýb . Na nasledujúcom obrázku sú zobrazené štyri typy testovania používateľov
Koncepčné testovanie
Pred uvedením na trh vyhodnotte reakciu používateľa na nápad s aplikáciou. Postupy koncepčného testovania v systéme iOS sú opísané nižšie
Testovanie použiteľnosti
Testovanie použiteľnosti je test, ako ľahké je používanie vašej aplikácie pre iOS. Pri testovaní na systéme iOS sa dá test použiteľnosti zaznamenať na zapamätanie alebo zdieľanie s ostatnými.
V systéme iOS existujú niektoré nástroje podporujúce testovanie použiteľnosti.
Magitest, jednoduché testovanie použiteľnosti iOS pre weby a aplikácie.
Delight.io, tento nástroj dokáže zachytiť skutočnú interakciu používateľov s vašimi aplikáciami pre iOS.
Beta testovanie
Beta testovanie je testovanie integrácie so skutočnými údajmi, ktoré slúži na získanie konečnej spätnej väzby od používateľov. Ak chcete distribuovať svoje aplikácie na testovanie verzie beta, musíte postupovať podľa pokynov uvedených nižšie.
- Podmienka : Ak testujete beta verziu konečného kandidáta na vydanie, nezabudnite aplikáciu pred distribúciou testerom overiť.
- Vyhľadajte tester prostredníctvom služby : zhromaždíte ID zariadení od testerov a pridáte ich do Centra pre členov
- Vytvorte distribúciu ad hoc: Distribúcia Ad Hoc umožňuje testerovi spustiť vašu aplikáciu na svojom zariadení bez potreby kódu Xcode. Tento krok obsahuje 2 čiastkové kroky
- Vytvorte distribučné certifikáty
- Vytvorte profily poskytovania ad hoc
- Vyžiadajte si spätnú väzbu od testera: Testujte vykonávanie testov a pošlite vám hlásenia o chybách. Po vydaní aplikácie môžete získať prehľady z aplikácie iTunes connect.
A / B testovanie
A / B testovanie je jedným z najsilnejších spôsobov, ako vyhodnotiť účinnosť vašej aplikácie pre iOS . Používa randomizované experimenty s dvoma zariadeniami, A a B.
Testovanie A / B zahŕňa tri hlavné kroky
- Konfigurácia testu : Pripravené dve verzie vašej aplikácie pre iOS (A a B) a testovacia metrika
- Test : Testujte súčasne vyššie dve verzie aplikácií pre iOS na zariadeniach.
- Analýza : Zmerajte a vyberte lepšiu verziu, ktorú chcete vydať
Nasledujúce nástroje podporujú testovanie A / B v systéme iOS.
- Vzniká: A / B testovanie pre iOS aj Android. Môže byť integrovaný do vašej aplikácie pre iOS a urýchliť tak proces testovania.
Osvedčené postupy na testovanie A / B
- Definujte cieľ svojho testu. Akýkoľvek test je bez cieľa zbytočný.
- Sledujte, ako koncoví používatelia používajú vašu aplikáciu prvýkrát
- Pre každú aktualizáciu spustite iba jeden test. Šetrí váš čas pri testovaní
- Pozorne sledujte svoj test. Z monitorovania sa môžete dozvedieť skúsenosti.
Osvedčené postupy pre testovanie na iOS
Tu je niekoľko rád, ktoré by ste mali vedieť pri organizovaní testovania vašej aplikácie pre iOS
- Vyskúšajte aplikáciu na skutočnom zariadení, aby ste dosiahli skutočný výkon
- Vylepšite svoje testovacie metódy, pretože tradičné testovacie metódy už nepostačujú na pokrytie všetkých testov pri testovaní na iOS
- Používanie protokolu konzoly na testovanie aplikácie iOS. Toto je funkcia systému iOS, ktorá obsahuje informácie zo všetkých aplikácií v zariadení.
- Dokumentujte chyby aplikácií pomocou zabudovaného krátkeho príkazu na obrazovke . Pomáha vývojárom pochopiť, ako sa chyby vyskytujú.
- Havarijné správy sú užitočné nástroje pri testovaní vašej aplikácie. Môžu detekovať zlyhania a zaznamenávať podrobnosti, aby ste mohli chyby ľahko preskúmať.
MYTHS o testovaní iOS
Táto časť skúma niekoľko populárnych mýtov a skutočností o testovaní na iOS
Testovacie aplikácie pre iOS a Android sú to isté.
iOS a Android sú dve platformy vyvinuté spoločnosťami Apple Inc a Google. Sú úplne odlišné. Testovacie prostredia atď., Testovacie rámce, programovacie jazyky.
Testovacej aplikácie na simulátore iOS je dosť.
iOS Simulator nie je dosť silný na testovanie aplikácie. Pretože iOS Simulator má určité obmedzenia:
- Hardvérové obmedzenia (fotoaparát, vstup mikrofónu, snímač)
- Môže sa zdať, že používateľské rozhranie vašej aplikácie beží rýchlejšie a plynulejšie ako v zariadení
- Obmedzenia API
- Niektoré rámce nie sú podporované (prehrávač médií, Store Kit, používateľské rozhranie správ ...)
Každý si moje aplikácie stiahne z obchodu s aplikáciami, pretože má veľa funkcií
Čím viac funkcií vaša aplikácia má, tým viac chýb by ste mohli získať. Žiadny používateľ si vašu aplikáciu nestiahne, ak má stále veľa chýb.