IOS-i rakenduste testimise õpetus: käsitsi ja Automaatika

Lang L: none (table-of-contents):

Anonim

Mis on iOS-i rakenduste testimine?

iOS-i rakenduste testimine on testimisprotsess, mille käigus testitakse iOS-i rakendust reaalsetes Apple'i seadmetes, et kontrollida, kas see töötab ootuspäraselt või mitte konkreetsete kasutajatoimingute puhul, näiteks installiaeg, kasutajaliides, kasutajakogemus, välimus, käitumine, funktsionaalsus, laadimisaeg jõudlus, App Store'i kirje, OS-i versiooni tugi jne.

Miks iOS-i rakenduste testimine?

iOS-i rakenduste testimine on vajalik, kuna iOS on Apple'i mobiilirakenduste platvorm, mis ilmus 29. juunil 2007. Erinevalt Androidist ei luba Apple iOS-i mitte-Apple'i riistvarale installimiseks. iOS-i ja iOS-i rakendusi saab installida ainult Apple'i seadmetesse, seega peab teie iOS-i rakendus ühilduma iOS-i versioonide ja iOS-seadmetega.

See on levinud küsimus, kui arendaja loob iOS-i rakenduse.

Pole tähtis, kui palju aega disaini ja rakendamisse investeerite, vead on vältimatud ja ilmnevad vead. IOS-i rakenduses on mõned levinud vead. Nagu on näidatud allpool joonisel.

  1. Rakendus krahh

Apple'i seadmete kasutamisel on üks masendavamaid probleeme see, et rakendus võib käivitamisel sageli kokku kukkuda. Mitu korda jookseb rakendus kokku, kuna rakendustes on vigu või lekib mälu.

  1. Rakenduse vastuolud

Teie iOS-i rakendus võib praeguse iOS-i versiooniga suurepäraselt töötada, kuid kui iOS-i täiendatakse, ei pruugi see sobimatusprobleemide tõttu töötada.

  1. Turvalisuse haavatavus

IOS-i turvanõrkus võimaldab häkkeril rünnata teie iOS-i seadmeid, varastada teie privaatset teavet. Siiani avastati iOS-i erinevates versioonides tõsiseid iPhone'i turvaauke.

  1. Mälu lekib

Mälulekked on eraldatud mälu plokid, mida programm enam ei kasuta. Mälulekked põhjustavad teie iOS-i rakenduse krahhi. Need on vead ja tuleks alati parandada.

Selles õpetuses saate teada

  • Miks iOS-i testimine?
  • iOS testib MindMapi
  • iOS-i kontrollnimekiri
  • iOS-i testimisstrateegia
  • Automatiseeritud testimine
    • Üksuse testimine OCUnitiga
    • Kasutajaliidese testimine UIAutomatiseerimisega
  • Käsitsi testimine
    • Uurimuslik katsetamine
    • Kasutaja testimine
      • Mõiste testimine
      • Kasutatavuse testimine
      • Beetatestimine
      • A / B testimine
  • iOS-i testimine Parim tava
  • MÜÜTID iOS-i testimise kohta

iOS testib MindMapi

Nagu ülaltoodud joonisel näidatud, näitab iOS-i testimine MindMap kõiki elemente, mida testija peaks iOS-is testimise ajal arvestama.

iOS-i rakenduste testimise kontroll-loend

See kontroll-loend on spetsiaalselt loodud iOS-i mobiilirakenduste omaduste testimiseks. Ilmselt testib see ainult rakenduse üldisi omadusi, mitte selle funktsionaalsust.

  • Kontrollige rakenduse seadmesse installimise aega. Veenduge, et rakendus oleks installitud vastuvõetava aja jooksul.
  • Kui rakendus on installitud, kontrollige, kas rakendusel on rakenduse ikoon ja nimi. Samuti veenduge, et nii ikoon kui ka nimi oleksid rakenduse põhieesmärke kajastavad.
  • Käivitage rakendus ja kontrollige, kas kuvatakse pritsmekraan.
  • Kontrollige pritsmekraani ajalõppu ja avaekraani laadimiseks kulunud aega. Rakenduse avakuva peaks laadima vastuvõetava aja jooksul. Kui avakuva laadimiseks kulub ainult rohkem aega, on kasutajal rohkem võimalusi rakendus ise sulgeda või isegi desinstallida. Samuti kontrollige, kuidas sisu avakuvale laaditakse.
  • Rakenduse peamine funktsioon peaks olema kohe nähtav. See peaks rääkima enda eest.
  • Kontrollige, kas rakendus toetab nii horisontaalset kui ka vertikaalset orientatsiooni. Kui jah, kontrollige rakendust mõlemas suunas. Rakenduse kasutajaliides peaks vastavalt seadistuma.
  • Internetiühenduseta käivitage rakendus. Veenduge, et rakendus käituks nii, nagu see on kavandatud / soovitud. On tõenäoline, et rakendus võib selle käivitamisel kokku kukkuda või kuvada lihtsalt tühja ekraani.
  • Kui rakendus kasutab asukohateenuseid, siis kontrollige, kas asukoha loa hoiatust kuvatakse või mitte. Seda hoiatust tuleks kasutajale küsida ainult üks kord.
  • Kui rakendus saadab tõukemärguandeid, siis kontrollige, kas kuvatakse tõukemärguande loa hoiatust või mitte. Seda hoiatust tuleks kasutajale küsida ainult üks kord.
  • Käivitage rakendus, sulgege see ja taaskäivitage. Kontrollige, kas rakendus käitub kavandatud / soovitud viisil
  • Sulgege rakendus, puudutades seadme nuppu Kodu ja avage rakendus uuesti. Kontrollige, kas rakendus töötab kavandatud / soovitud viisil.
  • Pärast installimist kontrollige, kas rakendus on iPhone'i seadete rakenduses loetletud.
  • Pärast rakenduse otseülekannet kontrollige, kas rakendust saab leida rakenduse „App Store” alt. Rakendusele toetatakse operatsioonisüsteemi versiooni. Nii et veenduge, et rakendus oleks leitav toetatud operatsioonisüsteemi versiooni seadme rakenduse „App Store” alt. Samuti ei tohiks rakendus olla loetletud OS-i toeta seadme App Store'is.
  • Aku tühjenemise vältimiseks kontrollige, kas rakendus töötab taustal töötades unerežiimis.
  • Kui rakenduse jõudlus on aeglane või kui sisu laaditakse, kontrollige, kas seal on edenemise oleku ikoon ("Laadimine ..."), eelistatavalt konkreetse sõnumiga.
  • Otsige rakendust koos selle nimega seadme otsinguribalt. Kontrollige, kas rakendus on loendis
  • Kontrollige, kas tavapäraseid toiminguid sooritavate nuppude välimust ei muudeta rakenduses (näiteks: värskenda, korrastage, prügikasti, vastake, tagasi jne)
  • Kontrollige, kas tavapäraseid nuppe ei kasutata muude funktsioonide jaoks, milleks neid tavaliselt kasutatakse

iOS-i testimisstrateegia

Allpool olev joonis tutvustab mõnda levinumat tüüpi iOS-i testimisstrateegiat.

Automatiseeritud testimine

Automatiseeritud testimine on iOS-i testimise kõige eelis. See võimaldab teil vea ja jõudlusega seotud probleemid kiiresti avastada. Allpool näidatud automatiseeritud testimise eelised:

  • Automaatne testimine võib toimida mitmes seadmes, säästes teie aega
  • Automaatne testimine võib sihtida SDK-sid. Testi saate käivitada erinevate SDK versioonidega
  • Automatiseeritud testimine suurendab testimise tootlikkust, säästab tarkvaraarenduse kulusid
  • IOS-is on palju avatud lähtekoodiga testimisraamistikke, mis toetavad automatiseeritud testimist

Üksuse testimine OCUnitiga

Kui algne iOS SDK vabastati, puudusid sellel üksuste testimise võimalused. Nii et Apple on tagasi toonud OCUniti üksuse testlahenduse iOS SDK versioonis 2.2.

OCUnit on C-Objektiivi testimisraamistik Mac OS-is. OCUniti raamistiku suurimad eelised on tihe integreerimine XCode'i arenduskeskkonda, nagu allpool näidatud.

Mõned OCUniti eelised on näidatud allpool joonisel.

Kasutajaliidese testimine UIAutomatiseerimisega

UI Automation on Apple Inci pakutav JavaScripti teek, mida saab kasutada reaalseadmetes ja iOS Simulatoris automatiseeritud testi tegemiseks. See raamistik on lisatud iOS SDK4.0-le. Kasutades kasutajaliidese automatiseerimist, saate automatiseerida rakenduse testimise mitte ainult simulaatoris, vaid ka reaalses seadmes.

UIAutomation toob teile järgmised eelised:

  • Vähendage käsitsi testimisega seotud jõupingutusi
  • Kasutage kõigi testide läbiviimiseks vähem mälu
  • Lihtsustage oma kasutajaliidese testimise protseduuri (vajutage lihtsalt ühte või kolme nuppu ja käivitage testipaketid täielikult)

UIAutomation-instrument töötab skriptidest, mis on kirjutatud JavaScripti abil. See simuleerib kasutaja sündmusi iOS-i rakenduses.

UIAutomaatika miinused vs plussid

Plussid Miinused
1. Hea tugi žestile ja pööramisele See pole avatud lähtekoodiga, vähem arendaja tuge
2. Saab UIAutomation teste teha seadmes, mitte ainsas simulaatoris. Ei saa teiste tööriistadega eriti hästi integreeruda
3. JavaScripti välja töötatud on populaarne programmeerimiskeel.

Ülaltoodud joonis esindab mõnda tavalist klassi UIAutomation raamistikus.

  • UIAElement klass on super klass kõik kasutajaliidese elemente kontekstis Automaatika
  • UIATarget klass kujutab endast kõrgetasemelise kasutajaliidese elemente katsetatav süsteem
  • UIALogger klassi pakub test eksituse teavet ülekanne funktsionaalsus
  • UIAActivityView klassi võimaldab juurdepääsu ja kontrolli, tegevuse seisukohti teie app.
  • UIAActionSheet klassi võimaldab juurdepääsu ja kontrolli, meetmete lehed teie app.
  • Kasutaja sündmuse toiming
    • UISlider klass
    • UIAnupu klass
    • UIAKey klass
    • UIAKeyboardi klass

Muud automatiseeritud testimisraamistikud

  • MonkeyTalk: tööriist iOS, Android, HTML5 ja Adobe rakenduste automaatseks testimiseks. See on integreeritud keskkond testimiskomplektide haldamiseks ja käitamiseks
  • Frank: iPhone'i ja iPadi automatiseeritud aktsepteerimistesti raamistik
  • KIF: on iOS-i integreerimistesti raamistik. See võimaldab iOS-i rakendusi hõlpsasti automatiseerida, kasutades selleks ligipääsetavuse atribuute, mille OS teeb nägemispuudega inimestele kättesaadavaks.

Käsitsi testimine

Uurimuslik katsetamine

See on testimine ilma ametliku testimiskavata. Uurimuslik testimine on odav testimismeetod, kuid see võib teie iOS-i rakenduses potentsiaalsetest vigadest ilma jääda.

Uuriva testimise miinused ja plussid

Plussid Miinused
1. Vaja on vähem ettevalmistusi, tõsised vead avastage varakult. Nõuab testija kõrget oskust
2. Vea tuvastamise kiirendamiseks pole vaja testplaani. Testi katvus on madal. See ei taga, et kõiki teie nõudeid testitakse.
3. Enamik vigu avastatakse varakult mingisuguste uurimiskatsete abil Testimisdokumentatsiooni puudumine

Kasutaja testimine

Kasutaja testimine on iOS-is käsitsi testimise tüüp. Selle testimise eesmärk on luua paremaid rakendusi, mitte ainult vigu sisaldavaid rakendusi. Allpool olev joonis näitab nelja tüüpi kasutaja testimist

Kontseptsiooni testimine

Enne turuletulekut hinnake kasutaja vastust rakenduse ideele. Mõiste testimise protseduure iOS-is kirjeldatakse allpool

Kasutatavuse testimine

Kasutatavuse testimine on test, kui hõlpsasti oma iOS-i rakendust kasutada. IOS-i testimisel sai kasutatavustesti salvestada, et neid mäletada või teistega jagada.

Mõni tööriist toetab iOS-i kasutatavuse testimist.

Magitest, lihtne iOS-i kasutatavuse testimine saitidele ja rakendustele.

Delight.io, see tööriist saab teie iOS-i rakendustes tõelist kasutajate suhtlemist.

Beetatestimine

Beetatestimine on tegelike andmetega integreerimise testimine , et saada kasutajatelt lõplikku tagasisidet. Rakenduste beetatestimiseks levitamiseks peate järgima alltoodud samme.

- Eeltingimus : kui testite versiooni lõplikku kandidaati beetaversioonina, kinnitage rakendus enne testijatele levitamist kindlasti.

- Leidke tester teenuse kaudu : kogute testijatelt seadme ID-d ja lisate need liikmeskeskusesse

- Loo ajutine levitamine : Ad Hoc levitamine võimaldab testijal teie rakendust oma seadmes käitada ilma Xcode-d vajada. See samm sisaldab 2 alamastet

  • Looge jaotussertifikaadid
  • Looge ajutised eraldusprofiilid

- küsige testijalt tagasisidet: testija viib läbi testimist ja saadab teile veateateid. Pärast rakenduse vabastamist saate aruandeid hankida iTunes connectist.

A / B testimine

A / B testimine on üks võimsamaid viise oma iOS-i rakenduse tõhususe hindamiseks . Selles kasutatakse randomiseeritud katseid kahe seadmega, A ja B.

A / B testimine hõlmab kolme peamist etappi

  • Testi konfigureerimine : teie iOS-i rakenduse (A ja B) 2 versiooni ja testimõõdik on ette valmistatud
  • Test : testige samaaegselt seadmetes kahte ülaltoodud iOS-i rakenduse versiooni.
  • Analüüs : mõõdetage ja valige väljaandmiseks parem versioon

Järgmised tööriistad toetavad A / B-testimist iOS-is.

  • Tekib: A / B testimine nii iOS-i kui ka Androidi jaoks. Selle saab integreerida teie iOS-i rakendusse ja muuta testimisprotsess kiiremaks.

Parimad tavad A / B testimiseks

  • Määrake eesmärgi oma test. Igasugune test on kasutu ilma sihtmärgita.
  • Vaadake, kuidas lõppkasutajad teie rakendust esimest korda kasutavad
  • Käivitage värskenduse kohta ainult üks test. See säästab teie aega testimisel
  • Jälgige oma testi hoolikalt. Testist saate kogemusi õppida seda jälgides.

iOS-i testimine Parim tava

Siin on mõned näpunäited, mida peaksite teadma oma iOS-i rakenduse testimise korraldamisel

  1. Testige rakendust reaalses seadmes, et jõudlusest reaalsust saada
  2. Parandage oma testimismeetodeid, sest traditsioonilised testimismeetodid ei ole enam piisavad kõigi iOS-i testide testide kajastamiseks
  3. Konsoolilogi kasutamine iOS-i rakenduse testimiseks. See on iOS-i funktsioon, mis sisaldab teavet kõigist seadme rakendustest.
  4. Dokumendirakenduse vead, kasutades sisseehitatud ekraani lühikäsku. See aitab arendajal mõista, kuidas vead esinevad.
  5. Krahhide aruandlus on teie rakenduse testimisel kasulik tööriist. Nad suudavad avastada krahhi ja logi üksikasjad, et saaksite vigu hõlpsalt uurida.

MÜÜTID iOS-i testimise kohta

Selles jaotises uuritakse mõningaid iOS-i testimise populaarseid müüte ja tegelikkust

Rakenduse testimine iOS-is ja Androidis on sama.

iOS ja Android on kaks platvormi, mille on välja töötanud Apple Inc ja Google. Need on täiesti erinevad. Jne testimiskeskkonnad, testraamistikud, programmeerimiskeeled.

Piisab testrakendusest iOS Simulatoril.

iOS-i simulaator pole rakenduse testimiseks piisavalt tugev. Kuna iOS-i simulaatoril on mõned piirangud:

  • Riistvarapiirangud (kaamera, mikrofoni sisend, andur)
  • Teie rakenduse kasutajaliides võib töötada nii kiiremini kui ka sujuvamalt kui seadmes
  • API piirangud
  • Mõnda raamistikku ei toetata (Media Player, Store Kit, Message UI ...)

Kõik laadivad minu rakendused alla rakenduste poest, kuna sellel on palju funktsioone

Mida rohkem funktsioone teie rakendusel on, seda rohkem vigu võite saada. Ükski kasutaja ei lae teie rakendust alla, kui sellel on endiselt palju defekte.