Flestar tegundir hugbúnaðarprófa nota vandlega skilgreinda prófunaráætlun til að tryggja umfang. Hins vegar, þó að þessar færibreytur nái yfir marga möguleika þess að nota hugbúnað, líkja þær ekki alltaf eftir hegðun notanda sem þekkir ekki forritið og er einfaldlega að reyna að hafa samskipti við það á könnunarlegan hátt: Enter api prófun.
Í þessari grein munum við skoða allt sem tengist apaprófum, þar á meðal hugbúnaði fyrir apapróf, ferla, gerðir, aðferðir og fleira.
Hvað er apapróf?
Apaprófun er sífellt vinsælli hugbúnaðarprófunartækni. Það felur í sér að senda tilviljunarkennd inntak inn í forrit til að líkja eftir ófyrirsjáanleika samskipta notendaviðmóts.
Markmiðið er að finna villur eða hrun sem gæti verið erfitt að greina með fyrirfram skilgreindum prófunartilfellum. Apapróf líkir eftir því hvernig einstaklingur með enga reynslu eða þekkingu á forriti gæti kannað hugbúnaðinn af handahófi.
Þessi tækni er góður kostur fyrir bæði álags- og álagspróf umsóknir. Í raun gefa próf stöðugt handahófskenndar inntak til að reyna að brjóta forritið.
Það er margt líkt með apaprófum og ad hoc prófum, einkum tilviljunarkenndar eðli þeirra og skortur á að treysta á prófunaráætlun. Hins vegar er nægur munur á þessu tvennu til að líta á þær sem aðskildar aðferðir.
Þó að sumir verktaki benda til þess að apapróf séu tegund ad hoc prófunar, þá er einn marktækur munur á þessu tvennu að fólk getur framkvæmt apapróf án nokkurrar vitneskju um forritið.
Apapróf snýst um að hafa ekki prófunaráætlun. Þetta snýst um að gefa handahófskenndan inntak með það að markmiði að hrynja hugbúnaðinn.
Af hverju er það kallað apapróf?
Það er engin samstaða um hvers vegna þessi tækni er kölluð apapróf. Hins vegar eru nokkrar sannfærandi kenningar á bak við nafnið.
Kenning 1: Óendanlegur apasetning
Fyrsta kenningin gefur til kynna að nafnið tengist óendanlegu apasetningunni, myndlíkingu sem notuð er til að ræða tölfræðilegar líkur. Í stuttu máli segir þar að ef api sat fyrir framan ritvél og maukaði af handahófi lykla í óendanlega langan tíma myndi hann einhvern tíma framleiða heildarverk William Shakespeare.
Hugmyndin hér er sú að apaprófun líki eftir þessari handahófskenndu mölun á lyklum, og með nægum tíma mun það ná yfir öll tækifæri sem forritið mun standa frammi fyrir í framleiðslu.
Kenning 2: „The Monkey“ frá Macintosh
Hin kenningin er sú að nafnið komi frá MacOS forriti frá 1983 sem heitir „The Monkey“. Í stuttu máli vildi teymið sem vann að fyrstu Macintosh tölvunni finna leið til að streituprófa vélina sína.
Þeir töldu að ef þeir væru með apa sem slóst ofboðslega í burtu á lyklana og hreyfði sig í kringum músina myndi það hjálpa þeim að prófa seiglu tölvunnar. Þeir voru ekki með lifandi apa við höndina, svo þeir bjuggu til forrit sem gæti líkt eftir þessari tegund af notkun og kölluðu það „Apann“.
Af hverju er apapróf mikilvægt?
Stóra ástæðan fyrir því að apapróf eru mikilvæg er sú að það hjálpar teymum að uppgötva jaðartilvik eða óvænta hegðun innan apps. Hugmyndin hér er sú að forritarar geti notað apaprófanir samhliða hefðbundnari aðferðum til að fá betri tilfinningu fyrir því hvernig appinu verður tekið í náttúrunni.
Jafnvel alhliða prófun á vöru getur ekki keppt við tugþúsundir eða fleiri notendur sem taka þátt í forriti í langan tíma. Í litlu hlutfalli þessara tilvika munu notendur biðja forritið um að gera eitthvað óvænt. Það er nánast ómögulegt að afhjúpa allar þessar aðstæður með prófunartilfellum.
Apaprófun reynir að ná yfir þessar nánast handahófskenndu aðstæður. Þegar forritarar búa til prufutilvik hafa þeir tilhneigingu til að hafa nána þekkingu á appinu. Þeir skilja hver markmið notandans eru og þeir vita bestu röð samskipta sem þeir ættu að nota til að ná einhverju í appi.
Slembiraðað þessara inntaka þýðir að forritið er prófað á þann hátt sem verktaki hefur ekki íhugað. Á heildina litið eykur þetta seiglu og endingu hugbúnaðar í heild og tryggir að hann geti farið út í heiminn og horfst í augu við ófyrirsjáanleika fjölda notenda án þess að hrynja.
Hvenær ættir þú að nota apapróf?
Apapróf er frábær viðbótarprófunartækni. Stærsti kostur þess liggur í getu þess til að finna óvæntar villur sem ekki yrðu afhjúpaðar með hefðbundnari hugbúnaðarprófunaraðferðum. Sem slík er það best þegar það er notað samhliða aðferðum eins og:
Venjulega nota verktaki apapróf snemma í prófunarferlinu. Það er sérstaklega gagnlegt þegar skortur er á fyrirfram skilgreindum prófunaráætlunum til að styðjast við.
Hvernig eru apapróf framkvæmd?
Í ekki svo fjarlægri fortíð voru apaprófanir framkvæmdar handvirkt. Prófarar voru notaðir til að ýta á hnappa, slá inn texta, velja hluti og svo framvegis til að sjá hvernig kerfið myndi standast óhefðbundin inntak. Hér eru augljós vandamál. Í fyrsta lagi er það frekar tímafrekt. Í öðru lagi er lítil trygging fyrir því að þessar aðgerðir nái til allra atvika.
Dæmi um handvirkt apapróf
Hér eru nokkur dæmi um hvernig handvirk apapróf eru framkvæmd. Það getur líka gefið þér hugmynd um hvað sjálfvirk apapróf leitast við að líkja eftir.
- Prófandinn vafrar um vefsíðu með því að smella á handahófskenna til að sjá hvort þeir geti hrunið forritið eða leitt á óvæntar síður
- Prófari setur handahófskenndan texta inn í eyðublað til að sjá hvernig forritið bregst við
- Prófandinn dregur og sleppir táknum og hlutum til að sjá hvort þeir haga sér eins og búist er við eða valda óæskilegum afleiðingum.
Mismunandi gerðir apaprófa
Það eru þrjár megingerðir af apaprófum sem forritarar nota til að uppgötva sérstakar upplýsingar um seiglu forrita sinna.
1. Heimska apapróf
Heimskur apaprófun lýsir nálgun þar sem prófunarmaðurinn veit ekkert um forritið sem er í prófun. Þess í stað er prófarinn beðinn um að pota í kringum sig algjörlega ómeðvitaður um verkflæðið, ýta á takka, slá inn texta og svo framvegis. Þessi tækni getur hjálpað til við að afhjúpa verulega galla sem forritarar eru ekki meðvitaðir um.
2. Snjöll apapróf
Með snjöllum apaprófum veit prófunarmaðurinn svolítið um forritið og markmið þess og hefur jafnvel nákvæmar upplýsingar um hvernig það virkar. Þetta ferli notar einnig markvissari gerð af handahófi inntak sem er hannað til að ýta forritinu framhjá sérstökum mörkum. Að nota þessa nálgun er góð fyrir bæði streitu- og álagsprófanir.
3. Snilldar apapróf
Snilldar apapróf eru næsta stig frá snjöllum apaprófum. Prófandinn hefur sterka og yfirgripsmikla þekkingu á umsókninni og er valinn út frá þessari þekkingu. Þetta eftirlit getur hjálpað prófandanum að uppgötva margar villur vegna þess að þeir ættu að skilja vöruna frá sjónarhóli notanda.
Kostir og gallar við apapróf
Áður en þú ákveður að nota apaprófunartæknina þarftu að skilja kosti og galla hennar.
Kostir apaprófa
1. Að finna sjaldgæfar eða falda galla
Kannski er mest sannfærandi ávinningurinn við apaprófanir hæfileiki tækninnar til að afhjúpa pöddur, galla eða hegðun sem annars gæti komið í ljós. Að finna þessi jaðartilvik er krefjandi með hefðbundinni prófunartækni, þannig að apapróf er traust leið til að prófa fyrir hrun, gagnaspillingu og allt annað sem ógnar stöðugleika forrits.
2. Það tryggir styrkleika
Apaprófun er hönnuð til að sjá hvernig forrit bregst við þeim ófyrirsjáanlegu aðstæðum sem það mun standa frammi fyrir við raunveruleg notkun. Þegar forrit er komið í hendur notandans mun það leiða til fjölda mismunandi inntaka sem forritarar geta ekki séð fyrir. Apapróf líkja eftir því ástandi, sem leiðir til áreiðanlegri smíði.
3. Hagkvæmni
Í samanburði við aðrar tegundir prófana eru apaprófanir mjög hagkvæmar. Það eru nokkrar ástæður fyrir þessu. Í fyrsta lagi þarftu ekki að eyða miklum tíma í að hanna notkunartilvik fyrir appið þitt. Næst eru hugbúnaðarverkfæri fyrir apapróf að miklu leyti sjálfvirk, sem losar um tíma þróunaraðila fyrir önnur verkefni og sparar þér peninga.
4. Fjölhæfni
Eitt af því besta við apaprófun er að prófin geta verið framkvæmd af fólki með engan tæknilegan bakgrunn. Reyndar, í sumum tilfellum, er æskilegt að hafa einhvern sem er alveg grænn. Það sem meira er, þessi próf eru frekar einföld í uppsetningu, sem aftur dregur úr trausti á hæfum verkfræðingum.
5. Snemma villuuppgötvun
Að finna og leysa villur snemma í þróunarlífsferlinum sparar tíma á leiðinni. Apaprófun kynnir tilviljunarkennd í prófunum, sem getur hjálpað þér að finna galla í kóðanum þínum á meðan það er auðvelt að laga það.
Ókostir við apapróf
1. Umfjöllun
Þó að apaprófun geti leitt til bættrar prófunar, skortir það skipulagða og stefnumótandi nákvæmni annarra prófunartegunda. Í raun, vegna þess að þú ert að sprengja appið með handahófi inntak, ertu á miskunn ringulreiðarinnar við að finna villur. Það er ekki þar með sagt að það finni ekki allt, en án skýrrar og fyrirfram skilgreindrar stefnu geturðu ekki verið 100% viss um að allt hafi verið fangað.
2. Takmarkaðar umsóknir
Apapróf henta ekki öllum tegundum notkunar. Það er frábært fyrir flókin forrit með fullt af mismunandi eiginleikum og aðgerðum sem, síðast en ekki síst, hafa möguleika á óvæntum notendasamskiptum. Forrit sem bjóða upp á stífari og fyrirsjáanlegri aðgerðir eru ólíklegri til að njóta góðs af þessum prófum.
3. Tímafrek
Handvirkt apapróf er mjög tímafrekt. Það krefst mikillar samskipta við einingar og hugbúnað, án þess að tryggja að hver lota muni uppgötva villur. Að vísu geturðu gert ferlið sjálfvirkt, sem sparar töluverðan tíma og fjármagn.
4. Rangar jákvæðar
Vegna þess að apaprófanir eru óreiðukenndar eða tilviljunarkenndar geta sum inntak hermt eftir atburðarásum sem munu ekki gerast við raunverulega notkun vörunnar. Þetta ástand getur leitt til myndunar rangra jákvæða, sem leiðir til kóðara til að laga vandamál sem eru ekki nauðsynleg.
Hvað er glundroðaprófun?
Chaos prófun er hugbúnaðartækni sem notar stýrðar og vísvitandi tilraunir sem ætlað er að trufla kerfi (og jafnvel framkalla bilanir) til að meta seiglu þess og getu til að jafna sig.
Hugmyndin um að brjóta kerfi viljandi til að tryggja seiglu er nokkuð algeng í hugbúnaðarþróunarrýminu og þessar aðferðir leiða venjulega til byggingar sem verkfræðingar geta staðið á bak við.
Árið 2008, eftir að hafa upplifað þriggja daga gagnagrunnsspillingu, ákvað vinsæla streymisþjónustan Netflix að fara yfir í Amazon Web Services (AWS). Markmiðið var að forðast einstaka bilanapunkta og draga úr sveigjanleikavandamálum sem stafa af aukinni þjónustu þeirra.
Teymið innleiddi glundroðaprófanir til að prófa tilvik sem snúa að almenningi á AWS innviði. Kostirnir voru tvíþættir:
- Ferlið afhjúpaði veikleika sem Netflix verkfræðingarnir gætu lagað
- Það hvatti teymið til að byggja upp sjálfvirkar endurheimtarkerfi fyrir þjónustu sína.
Chaos apaprófun er hluti af Chaos Engineering. Það er notað til að prófa bilunarþol kerfis og getu þess til að viðhalda stöðugleika og afköstum, jafnvel þegar einstakir íhlutir bila óvænt.
Þó að það tengist apaprófum, þá er það sérstök tækni.
Apapróf vs Gorilla próf
Þú gætir líka hafa heyrt um hugmyndina um Gorilla próf í hugbúnaðarþróun. Þó að báðar aðferðir beri nöfn prímata, hafa þær margt líkt og ólíkt. Við skulum kanna hvað Gorilla prófun er og hvar hægt er að nota það.
Górillaprófun er talin skipulegri útgáfa af apaprófum. Til samanburðar eru apapróf oft notuð á fyrstu stigum prófunar þegar engin formleg próftilvik eru tiltæk. Górilluprófun notar aftur á móti sjálfvirkt tól eða handrit til að búa til handahófskenndar inntak fyrir hugbúnaðarforrit.
Górillupróf eru fljótleg og mun skilvirkari en handvirk apapróf. Það býður upp á víðtæka umfjöllun og það er frábær leið til að finna hrun sem þarf að leysa. Hins vegar er það best notað fyrir forrit með vel skilgreind mörk eða til að prófa tiltekna einingu vandlega.
Bæði apapróf og górillapróf eiga sinn stað í nútímaprófunum á hugbúnaðarþróun. Skilningur á þeim er lykillinn að því að nota rétta nálgun á réttu rými.
Hvert er besta apaprófunartækið?
Apaprófunarhugbúnaður er orðinn ómissandi hluti af verkfærasetti nútíma þróunaraðila. Hins vegar eru nokkrir möguleikar þarna úti. Svo, hver er besta apaprófunartækið? Hér eru nokkrar sem þú þarft að vita um.
1. ZAPTEST
ZAPTEST er öflugt sjálfvirknitól fyrir ókeypis hugbúnaðarprófun fyrirtækja sem styður fjölbreytt úrval af sjálfvirkni prófunartækni, þar á meðal apaprófun. Sumir af ZAPTEST eiginleikum sem hjálpa við apaprófun eru:
- Forskriftarupptaka án kóða: Liðin geta skráð notendaviðskipti og umbreytt þeim í prófkóða.
- Inntaksmyndun: ZAPTEST auðveldar slembiframleiðslu, sem er kjarnaþáttur apaprófa
- Öflug skýrsla: ZAPTEST býður upp á öfluga skýrslugerðarmöguleika sem hjálpa þér að skrásetja prófin þín
Auðvitað eru þessir eiginleikar bara að klóra yfirborðið af getu ZAPTEST fyrir margs konar prófunartækni, þar á meðal apapróf. Með WebDriver samþættingu, gervigreindum eiginleikum og ZAPTEST CoPilot geta lið upplifað framtíð hugbúnaðarprófana á einum stað.
Það sem meira er, notendur ZAPTEST Enterprise fá aðgang að sérstökum ZAP Expert í fullu starfi og ótakmörkuðum leyfum, og allt fyrir fyrirsjáanlegan fastan kostnað.
2. Appium
Appium er opinn hugbúnaður. Þú getur notað það bæði fyrir Android og iOS. Það gerir notendum kleift að gera sjálfvirkan samskipti farsímaforrita og hefur getu til að prófa apa. Hönnuðir geta líkt eftir margs konar viðbrögðum notendaviðmóts, eins og að slá inn texta, smella, banka og fletta.
Þó að Appium sé frábært tól fyrir farsímahönnuði, þá skortir það möguleika fyrir skjáborðs- og vefprófanir.
3. Monkey Test It
Monkey Test Það er skýjatengdur prófunarvettvangur með ýmsum prófunarmöguleikum sem fela í sér apaprófun. Þó að Monkey Test Það sé mjög notendavænt, skortir það ef til vill kraft samkeppnistækja.
Aðrir gallar eru að það gæti litið sléttari út og komið með betri skjölum. Það sem meira er, sumir notendur hafa kvartað yfir ónákvæmum niðurstöðum úr prófunum. Sem sagt, þetta er einfalt forrit með lágu verði, svo þú getur ekki búist við því að umheimurinn muni af því.
4. MonkeyTestJS
MonkeyTestJS er opinn uppspretta ástralskt JavaScript byggt tól sem er eingöngu byggt fyrir vefforrit. Það er frekar undirstöðu, en það er meira en fær um að gera starfið. Tólið gerir forriturum kleift að líkja eftir samskiptum notenda og vefforrita, svo sem smelli, eyðublaðaskilum, lyklaborðsinntaki og fleira.
Augljóslega er einn ókostur tólsins að það er aðeins fáanlegt fyrir vefforrit. Hins vegar er þess virði að hafa það í verkfærakistunni.
Hvert er besta sérstaka Android apaprófunartækið?
Það eru nokkrir góðir möguleikar fyrir forritara sem vilja koma smá ringulreið í prófun sína á Android forritum. Við skulum skoða tvö.
1. UI/Application Exerciser Monkey fyrir Android
UI/Application Exerciser Monkey fyrir Android er skipanalínuverkfæri sem gerir forriturum kleift að senda gervi-handahófskennd inntak eða atburði í bæði Android tæki og eftirlíkingar. Þetta tól keyrir í Android Debug Bridge skelinni.
2. MonkeyRunner fyrir Android
MonkeyRunner fyrir Android er vinsælt Android apaprófunartæki. Hugbúnaðurinn er API sem gerir forriturum kleift að skrifa forrit sem annað hvort líkja eftir eða stjórna Android tæki. Það er líka góður kostur fyrir bæði virkni- og einingaprófun.
Bæði þessi forrit eru góðir kostir. Hins vegar eru þeir nokkuð tæknilegir, sem hentar ekki öllum liðum.
Ætti apaprófun að vera sjálfvirk?
Eitt af stærstu vandamálunum við handvirka apaprófun er að það er svo tímafrekt. Annað sem þú ættir að hafa í huga er að það er erfitt fyrir nokkra prófunaraðila að líkja í raun eftir hinum ýmsu samskiptum sem breiður hópur notenda gæti haft við tiltekið forrit.
Svo, þrír gallar skjóta upp kollinum á okkur. Handvirkt apapróf er:
- Tímafrekt
- Dýr
- Mögulega vantar umfjöllun
Sjálfvirkt apaprófunartæki leysir öll þessi mál.
Er ZAPTEST rétti kosturinn fyrir apaprófunarþarfir þínar?
Apapróf er góð tækni til að hafa í prófunarskránni þinni, sérstaklega ef þú hannar flókin forrit. Hins vegar er dýrt að kaupa sérstakan apaprófunarhugbúnað.
ZAPTEST er sveigjanlegt og öflugt sjálfvirkniprófunartæki í fullri stafla. Það er mjög sérhannaðar og gerir bæði forriturum og teymum sem ekki eru tæknivæddar kleift að smíða og hanna endalaust magn af hugbúnaðarprófunartækni, þar á meðal apaprófun.
Apapróf er frábært val þegar það er bætt við aðrar tegundir prófa. ZAPTEST býður allt undir einu þaki, að viðbættum hágæða RPA verkfæri.
Lokahugsanir
Apaprófunarhugbúnaður veitir forriturum óhefðbundna leið til að prófa forritin sín. Styrkur þessarar tækni liggur í getu hennar til að líkja eftir mýgrút ófyrirsjáanlegra leiða sem notandi gæti notað hugbúnað. Í stuttu máli, apapróf veitir umfjöllun sem gæti verið erfitt að ná með prófunaráætlun.