Tutorial pentru testarea aplicațiilor iOS: Manual & Automatizare

Cuprins:

Anonim

Ce este testarea aplicațiilor iOS?

Testarea aplicațiilor iOS este un proces de testare în care o aplicație iOS este testată pe dispozitive Apple reale pentru a verifica dacă funcționează conform așteptărilor sau nu pentru acțiuni specifice ale utilizatorului, cum ar fi timpul de instalare, interfața utilizatorului, experiența utilizatorului, aspectul, comportamentul, funcționalitatea, timpul de încărcare, performanță, listare App Store, suport pentru versiunea sistemului de operare etc.

De ce testarea aplicațiilor iOS?

Testarea aplicațiilor iOS este necesară deoarece iOS este platforma Apple pentru aplicații mobile lansată pe 29 iunie 2007. Spre deosebire de Android, Apple nu acordă licență iOS pentru instalarea pe hardware non-Apple. Aplicațiile iOS și iOS pot fi instalate numai pe dispozitivele Apple, prin urmare, aplicația dvs. iOS trebuie să fie compatibilă cu versiunile iOS și dispozitivele iOS.

Aceasta este întrebarea obișnuită atunci când dezvoltatorul creează o aplicație iOS.

Nu contează cât timp investiți în proiectare și implementare, greșelile sunt inevitabile și vor apărea erori. Există câteva erori comune în aplicația iOS. Așa cum se arată în figura de mai jos.

  1. Aplicația se blochează

Una dintre cele mai frustrante probleme, atunci când utilizați dispozitivele Apple, este că o aplicație se poate bloca frecvent în timpul execuției. De multe ori aplicația se blochează, deoarece există unele erori sau scurgeri de memorie în aplicații.

  1. Incompatibilități de aplicare

Aplicația dvs. iOS poate rula perfect pe versiunea curentă de iOS, dar dacă iOS este actualizat, este posibil să nu funcționeze din cauza unor probleme de incompatibilitate.

  1. Vulnerabilitate de securitate

O vulnerabilitate de securitate în iOS permite hackerului să vă atace dispozitivele iOS, să vă fure informațiile private. Până acum, vulnerabilități severe de securitate iPhone sunt descoperite în diferite versiuni de iOS.

  1. Scurgeri de memorie

Scurgerile de memorie sunt blocuri de memorie alocată pe care programul nu le mai folosește. Scurgerile de memorie determină blocarea aplicației dvs. iOS. Sunt bug-uri și ar trebui să fie întotdeauna reparate.

În acest tutorial, veți învăța-

  • De ce testarea iOS?
  • Testarea iOS MindMap
  • Lista de verificare pentru testarea iOS
  • Strategia de testare iOS
  • Testare automată
    • Testarea unității cu OCUnit
    • Testarea UI cu UIAutomation
  • Testarea manuală
    • Testarea exploratorie
    • Testarea utilizatorului
      • Testarea conceptului
      • Testarea utilizabilității
      • Testarea beta
      • Testarea A / B
  • Testare iOS Cea mai bună practică
  • MITURI despre testarea iOS

Testarea iOS MindMap

Așa cum se arată în figura de mai sus, iOS Testing MindMap arată toate elementele pe care testerul ar trebui să le ia în considerare atunci când efectuează testarea pe iOS.

Lista de verificare a testării aplicațiilor iOS

Această listă de verificare este concepută special pentru a testa caracteristicile aplicațiilor mobile iOS. Evident, testează doar caracteristicile aplicației generice și nu funcționalitatea acesteia.

  • Verificați timpul de instalare al aplicației pe dispozitiv. Asigurați-vă că aplicația este instalată într-un timp acceptabil.
  • Odată ce aplicația este instalată, verificați dacă aplicația are pictograma și numele aplicației. De asemenea, asigurați-vă că atât pictograma, cât și numele sunt auto-explicative, reflectând intenția de bază a aplicației.
  • Lansați aplicația și verificați dacă este afișat ecranul de pornire.
  • Verificați timpul de expirare a ecranului de pornire și timpul necesar încărcării ecranului de pornire. Ecranul de pornire al aplicației trebuie să se încarce într-un timp acceptabil. Dacă ecranul de pornire necesită mai mult timp pentru încărcare, atunci există mai multe șanse ca utilizatorul să renunțe sau chiar să dezinstaleze aplicația în sine. De asemenea, verificați modul în care conținutul este încărcat în ecranul de pornire.
  • Funcția principală a aplicației ar trebui să apară imediat. Ar trebui să vorbească de la sine.
  • Verificați dacă aplicația acceptă atât orientări peisaj cât și orientări portret. Dacă da, verificați aplicația în ambele orientări. Interfața cu utilizatorul aplicației ar trebui setată în consecință.
  • Fără conexiune la internet, lansați aplicația. Asigurați-vă că aplicația se comportă așa cum a fost proiectată / dorită. Există șansa ca aplicația să se blocheze la lansarea acesteia sau să afișeze doar un ecran gol.
  • Dacă aplicația folosește servicii de localizare, verificați dacă este afișată sau nu alerta privind permisiunea de localizare. Această alertă trebuie solicitată utilizatorului o singură dată.
  • Dacă aplicația trimite notificări push, verificați dacă este afișată sau nu alerta de permisiune de notificare push. Această alertă trebuie, de asemenea, solicitată utilizatorului o singură dată.
  • Lansați aplicația, părăsiți-o și relansați. Verificați dacă aplicația se comportă așa cum a fost proiectată / dorită
  • Închideți aplicația atingând butonul Acasă al dispozitivului și deschideți din nou aplicația. Verificați dacă aplicația funcționează așa cum a fost proiectată / dorită.
  • Odată instalat, verificați dacă aplicația este listată în aplicația de setări iPhone.
  • După ce aplicația este activată, verificați dacă aplicația poate fi găsită în „App Store”. Va exista versiunea de sistem de operare acceptată pentru aplicație. Deci, asigurați-vă că aplicația poate fi găsită în „Magazinul de aplicații” al dispozitivului cu versiunea de sistem de operare acceptat. De asemenea, aplicația nu trebuie să fie listată în „Magazinul de aplicații” al dispozitivului cu versiunea OS neacceptată
  • Verificați dacă aplicația trece în modul de repaus atunci când rulează în fundal pentru a preveni descărcarea bateriei.
  • Dacă performanța aplicației este lentă sau ori de câte ori se încarcă conținutul, verificați dacă există o pictogramă de stare de progres („Încărcare…”), de preferință cu un mesaj specific.
  • Căutați aplicația cu numele său în bara de căutare a dispozitivului. Verificați dacă aplicația este listată
  • Verificați dacă aspectul butoanelor care efectuează acțiuni standard nu sunt modificate în aplicație (de exemplu: reîmprospătare, organizare, coș de gunoi, Răspuns, înapoi etc.)
  • Verificați dacă butoanele standard nu sunt utilizate pentru alte funcții, atunci când sunt utilizate în mod normal

Strategia de testare iOS

Figura de mai jos introduce câteva tipuri comune de strategii de testare iOS.

Testare automată

Testarea automată reprezintă cele mai multe avantaje ale testării iOS. Vă permite să detectați rapid erorile și problemele de performanță. Avantajele testării automate, după cum se arată mai jos:

  • Testarea automată poate rula pe mai multe dispozitive, economisindu-vă timpul
  • Testarea automată poate viza SDK-urile. Puteți rula testul pe diferite versiuni SDK
  • Testarea automată crește productivitatea testării, economisește costul dezvoltării software-ului
  • Există multe cadre de testare open source care acceptă testarea automată pe iOS

Testarea unității cu OCUnit

Când SDK-ul original iOS a fost lansat, acesta nu avea capacități de testare unitară. Așadar, Apple a readus soluția de testare a unității OCUnit în iOS SDK versiunea 2.2.

OCUnit este un cadru de testare pentru C- Objective în Mac OS. Cele mai mari avantaje ale unui cadru OCUnit sunt integrarea strânsă în mediul de dezvoltare XCode, așa cum se arată mai jos.

Unele dintre beneficiile OCUnit sunt prezentate în figura de mai jos.

Testarea UI cu UIAutomation

UI Automation este o bibliotecă JavaScript furnizată de Apple Inc, care poate fi utilizată pentru a efectua un test automat pe dispozitive reale și pe iOS Simulator. Acest cadru este adăugat la iOS SDK4.0. Folosind UI Automation, puteți automatiza testarea aplicației nu numai pe simulator, ci și pe dispozitivul real.

UIAutomation vă aduce aceste beneficii:

  • Reduceți efortul pentru testarea manuală
  • Folosiți mai puțin memoria pentru a vă executa toate testele
  • Simplificați procedura de testare a interfeței de utilizare (doar apăsați unul sau trei butoane și rulați complet suitele de testare)

Instrumentul UIAutomation funcționează din scripturi, care sunt scrise în JavaScript. Simulează evenimentele utilizatorilor pe aplicația țintă iOS.

UIAutomation Contra vs. Pro

Pro Contra
1. Suport bun pentru gest și rotație Nu este open source, mai puțin suport din partea dezvoltatorului
2. Poate rula teste de automatizare UIA pe dispozitiv, nu singurul simulator. Nu se poate integra cu alte instrumente extrem de bine
3. Dezvoltat de JavaScript, este un limbaj de programare popular.

Figura de mai sus reprezintă câteva clase comune în cadrul UIAutomation.

  • UIAElement Clasa este super - clasă pentru toate elementele de interfață de utilizator , în contextul automatizării
  • UIATarget clasă reprezintă la nivel înalt elemente de interfață cu utilizatorul sistemului în curs de testare
  • UIALogger clasa oferă informații de test și de eroare la funcționalitatea de regăsire
  • UIAActivityView Clasa permite accesul și controlul, vederi de activitate în cadrul aplicației.
  • UIAActionSheet Clasa permite accesul și controlul, foi de acțiune în cadrul aplicației.
  • Acțiune eveniment utilizator
    • Clasa UISlider
    • Clasa UIAButton
    • Clasa UIAKey
    • Clasa UIAKeyboard

Alte cadre de testare automată

  • MonkeyTalk: Un instrument pentru testarea automată a aplicațiilor iOS, Android, HTML5 și Adobe. Este un mediu integrat pentru gestionarea și rularea suitelor de testare
  • Frank: cadru de testare automată a acceptării pentru iPhone și iPad
  • KIF: este un cadru de testare a integrării iOS . Permite automatizarea ușoară a aplicațiilor iOS prin valorificarea atributelor de accesibilitate pe care sistemul de operare le pune la dispoziția celor cu dizabilități vizuale.

Testarea manuală

Testarea exploratorie

Este o testare fără un plan formal de testare. Testarea exploratorie este o metodă de testare cu costuri reduse, dar poate rata potențialele erori din aplicația dvs. iOS.

Testele exploratorii Contra vs. Pro

Pro Contra
1. Este nevoie de mai puțină pregătire, detectarea timpurie a erorilor grave. Necesită o înaltă abilitate a testerului
2. Nu aveți nevoie de Plan de testare accelerați detectarea erorilor. Acoperirea testului este redusă. Nu garantează că toate cerințele dvs. sunt testate.
3. Majoritatea erorilor sunt descoperite devreme printr-un fel de testare exploratorie Lipsa documentației de testare

Testarea utilizatorului

Testarea utilizatorului este un tip de testare manuală pe iOS. Scopul acestei testări este de a crea aplicații mai bune, nu numai aplicații fără erori . Figura de mai jos prezintă patru tipuri de testare a utilizatorilor

Testarea conceptului

Evaluați răspunsul utilizatorului la o idee de aplicație înainte de a lansa pe piață. Procedurile de testare a conceptului pe iOS sunt descrise mai jos

Testarea utilizabilității

Testul de utilizare este un test cât de ușor de utilizat aplicația dvs. iOS. În testarea iOS, testul de utilizare ar putea fi înregistrat pentru a-l aminti sau pentru a-l partaja cu alții.

Există câteva instrumente care acceptă testarea utilizabilității pe iOS.

Magitest, un test simplu de utilizare a iOS pentru site-uri și aplicații.

Delight.io, acest instrument poate captura interacțiunea reală a utilizatorilor pe aplicațiile dvs. iOS.

Testarea beta

Testarea beta este testarea integrării cu date reale pentru a obține feedback final de la utilizatori. Pentru a distribui aplicațiile pentru testarea beta, trebuie să urmați pașii de mai jos.

- Pre-condiție : dacă testați beta un candidat final pentru o lansare, asigurați-vă că validați aplicația înainte de a o distribui testerilor.

- Găsiți tester prin intermediul serviciului : colectați ID-uri de dispozitiv de la testere și le adăugați la Centrul de membri

- Creați o distribuție ad-hoc : distribuția Ad Hoc permite testerului să ruleze aplicația pe dispozitivul lor fără a avea nevoie de Xcode. Acest pas include 2 sub-pași

  • Creați certificate de distribuție
  • Creați profiluri de aprovizionare ad-hoc

- Solicitați feedback de la tester: Testerul efectuează testarea și vă trimite rapoarte de erori. După lansarea aplicației, puteți obține rapoartele din iTunes Connect.

Testarea A / B

Testarea A / B este una dintre cele mai puternice modalități de a evalua eficacitatea aplicației dvs. iOS . Folosește experimente randomizate cu două dispozitive, A și B.

Testarea A / B include trei pași principali

  • Configurați un test : ați pregătit 2 versiuni ale aplicației dvs. iOS (A & B) și valori de testare
  • Testați : testați simultan versiunile de 2 aplicații iOS de mai sus pe dispozitive.
  • Analizați : măsurați și selectați o versiune mai bună de lansat

Instrumentele următoare acceptă testarea A / B pe iOS.

  • Ridică: testare A / B atât pentru iOS, cât și pentru Android. Poate fi integrat în aplicația dvs. iOS și poate face procesul de testare mai rapid.

Cele mai bune practici pentru testarea A / B

  • Definiți ținta testului. Orice test este inutil fără o țintă.
  • Vizionați utilizatorii finali utilizează aplicația dvs. pentru prima dată
  • Rulați un singur test pentru fiecare actualizare. Vă economisește timpul la efectuarea testelor
  • Monitorizează- ți testul cu atenție. Puteți învăța experiențe din testul dvs. monitorizându-l.

Testare iOS Cea mai bună practică

Iată câteva sfaturi pe care ar trebui să le cunoașteți atunci când organizați testarea aplicației dvs. iOS

  1. Testați aplicația pe un dispozitiv real pentru a obține performanțe reale
  2. Îmbunătățiți- vă metodele de testare, deoarece metodele de testare tradiționale nu mai sunt suficiente pentru a acoperi toate testele de testare iOS
  3. Utilizarea jurnalului de consolă pentru a testa aplicația iOS. Aceasta este o caracteristică iOS care include informații de la fiecare aplicație de pe dispozitiv.
  4. Documentați erorile aplicației utilizând comanda scurtă a ecranului încorporat . Ajută dezvoltatorul să înțeleagă modul în care apar erorile.
  5. Raportarea accidentelor este un instrument util atunci când vă testați aplicația. Acestea pot detecta blocări și înregistra detalii, astfel încât să puteți investiga cu ușurință erorile.

MITURI despre testarea iOS

Această secțiune examinează câteva mituri și realități populare ale testării iOS

Testarea aplicației pe iOS și Android sunt același lucru.

iOS și Android sunt două platforme dezvoltate de Apple Inc și Google. Sunt total diferite. Medii de testare etc., cadre de testare, limbaje de programare.

Aplicația de testare pe iOS Simulator este suficientă.

Simulatorul iOS nu este suficient de puternic pentru testarea unei aplicații. Deoarece iOS Simulator are câteva limitări:

  • Limitări hardware (cameră foto, intrare microfon, senzor)
  • Interfața de utilizare a aplicației poate părea să ruleze mai rapid și mai ușor decât pe un dispozitiv
  • Limitări API
  • Unele cadre neacceptate (Media Player, Magazin Kit, Message UI ...)

Toată lumea va descărca aplicațiile mele din magazinul de aplicații, deoarece are multe funcții

Cu cât aplicația dvs. are mai multe funcții, cu atât puteți avea mai multe erori. Niciun utilizator nu va descărca aplicația dvs. dacă are încă multe defecte.