mobile application performance testing guide
Vejledning til ydelsestest af mobilapplikationer:
I denne Eksplicit udvalg af Performance Testing tutorials, vi udforskede begrebet Test af skypræstationer i vores sidste tutorial.
Her lærer du, hvad der er en mobilapplikation, typer af mobilapplikationer, effektivitetstestning af mobilapplikation, hvordan man opsætter et testmiljø til mobilapplikationstest, hvordan man foretager fejlfinding af ydeevneproblemer med mobilapplikationer, de involverede udfordringer og de tilgængelige værktøjer osv. på en detaljeret måde.
=> Klik her for at få komplette præstationsprøvetutorials-serier
Hvad du lærer:
- Oversigt
- Hvad er en mobilapplikation?
- Arkitekturen af mobile applikationer
- Metode til test af mobilapplikation
- Strategi til effektivitet for mobilapplikationer
- Testmiljø for mobil applikationspræstation
- Udfordringer for test af mobilapplikationstest
- Fejlfinding af ydelsesproblemer med mobilapplikationer
- Værktøjer til test af ydeevne til mobil applikationer
- Konklusion
- Anbefalet læsning
Oversigt
I nutidens teknologiske verden bruges mobilapplikationer i vid udstrækning end almindelige desktopapplikationer. Antallet af brugere, der bruger smartphones til at få adgang til de fleste af deres applikationer end ved hjælp af en stationær eller en bærbar computer, øges drastisk.
Slutbrugeren forventer også et godt svar fra applikationen, når han bruger den. Derfor skal udvikleren, der bygger mobilapplikationerne, huske dette under udviklingen af applikationen.
Nu er Performance Testing kritisk, enten er det en almindelig webapplikation eller en applikation på en mobilenhed. Hvis en applikation går live uden at blive præstationsprøvet, og hvis slutbrugeren står over for præstationsproblemer som et langsomt svar osv., Vil han forsøge at finde en anden bedre applikation, der fungerer bedre.
Ydelsestest er dyrt, og det tager også mere tid. Derfor undgår mange kunder at gå til præstationstest, men dette vil hjælpe meget med problemerne i produktionen. Således skal enhver applikation testes grundigt, før den gøres tilgængelig for slutbrugeren.
Hvad er en mobilapplikation?
Mobilapplikationer er et sæt foruddefinerede funktioner, der er designet til at arbejde på mobile enheder såsom Smart Phone, Tablets og andre funktionstelefoner. Ikke alle mobilapplikationer er ens, der er tre forskellige typer mobilapplikationer, og disse er baseret på den teknologi, der er brugt til at udvikle disse applikationer.
Tre typer mobilapplikationer inkluderer:
- Native mobilapplikationer
- Webbaserede mobilapplikationer
- Hybrid applikationer
# 1) Native mobilapplikationer:
Native Mobile Applications er de applikationer, der kører på dine egne smartphones eller tablets, de kører på de mobile enheders operativsystem. De giver høj ydeevne og er også meget pålidelige. Denne type applikationer har også adgang til de andre applikationer på din smartphone-enhed, såsom fotos, adressebog osv.
Indfødte applikationer er tilgængelige i mobilapplikationen. Til Android har vi playbutik og til iPhone har vi iTunes. Så disse applikationer downloades fra deres respektive butikker og installeres på mobile enheder.
Eksempler af indfødte applikationer er en lommeregner, kalender, Facebook-applikation osv.
# 2) Webbaserede mobilapplikationer:
Webbaserede mobilapplikationer kører direkte fra browseren, de er ikke installeret på den mobile enhed.
Eksempler af webbaserede mobilapplikationer er onlinespil, sociale netværkssider osv.
# 3) Hybrid applikationer:
Hybridapplikationer ligner indfødte applikationer, og de kører inde i den oprindelige container, de er en blanding af begge applikationer, og de bruger enhedsbrowseren og ikke den aktuelle browser til at gengive applikationswebsiderne.
Eksempler af hybrid applikationer er Instagram, Yelp osv.
Arkitekturen af mobile applikationer
I ovenstående figur , smartphones og tablets kommer under klientsiden. De inkluderer de enheder, som vi normalt bruger som en smarttelefon, tablets, deres netværk som 3G, 4G osv. Et operativsystem til enhederne som Android, iOS, Windows osv.
Mobilt mobilnetværk , Trådløs, Internet og Firewall hører under Netværk. For mobilnetværket ser vi signalstyrke, netværksoverbelastning, frafald osv. For et trådløst netværk ser vi signalstyrke, hastighed osv.
Web, app og DB kommer på serversiden, hvor størstedelen af arbejdet udføres.
Metode til test af mobilapplikation
Test af ydeevne til mobilapplikationer er forskellig fra test af ydeevne til webapplikationer. De bærbare eller stationære computere, der bruges til at få adgang til webapplikationerne, lider ikke meget af dårlige netværksforhold, herunder pakketab eller latenstid.
Mens der i mobilapplikationsnetværksforhold, alt tab af pakke, latens, den type enhed, vi bruger som en smartphone eller smart enhed og båndbredde, betyder noget, og vi bør ikke ignorere alle disse faktorer, når vi overvejer præstationstestning af mobilapplikationer.
Før du udvikler din præstationsstrategi, skal du forstå, hvilken type applikation du kører på din mobile enhed.
grep-kommandoer i unix med eksempler
Der er tre typer applikationer:
- Browserbaserede applikationer
- Native applikationer
- Hybrid applikationer
# 1) Browserbaserede applikationer:
Der kan fås direkte adgang til denne type applikationer via en mobilbrowser, og de har ikke brug for yderligere software for at blive downloadet eller installeret på enheden.
De er lette og er bygget på den samme stak i alle typer enheder såsom Android, iPhone osv. Også responsivt webdesign bevægelse gør det endnu mere nemmere at oprette en multi-browser-baseret applikation, da du kan gengive applikationen til forskellige skærmstørrelser.
Denne type applikationer har ulemper, som om de ikke er tilgængelige uden en internetforbindelse, de har ikke alle de funktioner, der er indbygget i enheden, og de har også en tendens til at virke langsommere for brugerne.
Så. mens ydelsestestning af denne type applikationer er det vigtigt at replikere brugerindlæsningen fra en mobilbrowser, og det er også vigtigt at teste websidens gengivelse på målenheder.
# 2) Native applikationer:
Denne type applikationer er bygget på en bestemt platform ved hjælp af softwaren, der er installeret direkte på enheden.
Indfødte applikationer er hurtigere og mere lydhøre, da de er bygget lokalt på enheden. Da koden på hver enhed er forskellig, det vil sige for iPhone, Android osv., Mens vi under ydelsestestning skal overveje at teste på hver platform.
# 3) Hybrid applikationer:
Hybride applikationer er kombinationen af både browser- og native-applikationer. De er sammensat af en indbygget skal, der giver en hurtig integreret oplevelse.
Mens ydelsestestning er målrettet mod den belastning, der genereres af brugerne af en sådan hybrid applikation på serversiden, samt måler enhedens applikationsydelse fra et slutbrugerperspektiv.
Så hvordan tester vi disse mobilapplikationer?
For at teste sådanne mobile applikationer er vi nødt til at opbygge et miljø med emulatorer og ægte enheder. Mobile emulatorer er software, der skal installeres på vores bærbare eller stationære computere, der efterligner en mobilapplikation eller en mobil platform.
Derfor kan vi ved hjælp af disse emulatorer generere en betydelig mængde belastning til vores belastningstest.
Den anden metode bruger ægte enheder, her har vi enheden fysisk, og vi kan se, hvordan applikationen fungerer på hver enhed. Ved hjælp af rigtige enheder har vi ikke mulighed for at generere belastningen, som er vores hovedmål, men for at gøre det skal vi have flere rigtige enheder.
Men hvis du vil teste applikationens opførsel på en bestemt enhed, kan du bruge den rigtige enhed, men for at generere belastning er vi nødt til at bruge emulatorer.
Det næste punkt, du skal bemærke, når du tester en mobilapplikation, er at kende slutbrugerens adgangsplacering. Det er meget vigtigt at vide, om brugerne har adgang fra samme by, samme land, eller om de er spredt over hele verden osv. Hvis vi planlægger vores test eller miljø uden at overveje dette, ville vores test være forkert.
Applikationsydelse på en mobilapplikation som en smartphone eller en smart enhed måles normalt i form af enhedsydelse, server / API-ydelse og netværksydelse.
Vi er nødt til at kontrollere følgende under hver forestilling.
Enheds ydeevne:
- Applikationens starttid
- Batteritid, mens du bruger applikationen
- Hukommelsesforbrug
- Hardware og software variation
- Anvendelse med andre applikationer
- En applikation, der kører i baggrunden
Server / API-ydeevne:
- Data til og fra serveren.
- API-opkald genereret
- Serverens nedetid
Netværksydelse:
- Pakketab
- Netværkshastighed
Således, mens du skriver fremgangsmåden til test af mobilapplikationers ydeevne, skal du overveje alle ovenstående punkter og matche dit projekts omfang og krav.
Strategi til effektivitet for mobilapplikationer
Performance Test Approach er forskellig for hver type mobilapplikation. Metoden varierer fra en applikation til den anden, da hver applikation er udviklet med forskellige komponenter, og behandlingsmekanismen er forskellig for hver.
Browserbaserede mobilapplikationer fungerer anderledes end den almindelige webbrowser-applikation. Denne adfærd skyldes båndbredden fra den dataplan, som slutbrugeren bruger, og det afhænger også af konfigurationen på de mobile enheder.
Omkostningerne ved at udvikle denne type browserbaserede applikation vil være mindre, da udviklingsarbejdet ville være at se dets kompatibilitet med de browsere, der er tilgængelige på mobile enheder.
Derfor er vi nødt til at replikere brugerbelastningen på browseren til præstationsafprøvning såsom mobile browserbaserede applikationer. Vi kan gøre dette ved at bruge emulatorer eller andre yderligere komponenter. Bortset fra brugerbelastningen på de mobile browsere er vi også nødt til at teste websidens gengivelse på enhederne.
hvordan man laver en penetrationstest
Udviklingsomkostningerne ved Native Mobile Applications er mere. Applikationerne installeres direkte på enheden, hvilket gør brugeroplevelsen bedre, men applikationen er platformafhængig.
Så hvis vi vil teste ydeevne i denne type applikationer, er vi nødt til at teste alle platforme på de mobile enheder som Android, iOS, windows osv. Og også på alle typer enheder som smartphone, tablets osv.
Hybride mobilapplikationer er en kombination af både browserbaserede mobilapplikationer og indfødte mobilapplikationer, derfor skal vi her teste brugerbelastningen på serveren, og vi skal også udføre en fuldstændig test af ydeevne på alle mobile enheder og platforme.
For enhver applikation på den mobile enhed er der to hovedfaktorer, der påvirker slutbrugerens ydeevne:
- Anmodning på den mobile enhed
- Sidegengivelsen på den mobile enhed
# 1) Anmodning på den mobile enhed:
Under dette leveres anmodningen til serveren, og serverresponsen genereres baseret på den modtagne anmodning. Når svaret er genereret på serveren, sendes dette svar tilbage til den mobile enhed, som har sendt den oprindelige anmodning.
Her er de parametre, der skal undersøges, serverbelastningen, de forskellige netværkstyper som 3G, 4G osv., En belastning på hvert netværk og andre komponenter.
Vi kan teste disse ved hjælp af emulatorer, dvs. vi kan generere scripts og bruge emulatorer til at efterligne brugerbelastningen på serveren.
# 2) Sidet gengivelse på den mobile enhed:
Sidegengivelse på den mobile enhed er intet andet end svaret, der modtages fra serveren til den anmodning, vi sendte fra vores mobilapplikation.
Her er de parametre, der skal undersøges, enhedens operativsystem, konfigurationen af den mobile enhed osv. Vi kan teste disse ved faktisk at logge ind på den mobile enhed og overvåge dem.
youtube til wav-konverter online gratis
Lad os nu tage et detaljeret kig på hvert trin nævnt i ovenstående figur:
a) Opret brugerscenarier i realtid:
I lighed med de almindelige webbrowserapplikationer skal vi identificere de scenarier eller de forhold, der forventes på serveren i realtid. Der vil være mange scenarier, der skal testes.
Lad os antage en tilstand, hvor der er en webapplikation, der er tilgængelig på begge desktops såvel som mobilenheder, og den er også hjemmehørende i Android- og iOS-enheder. Her skal vi udvikle et test script baseret på applikationens adgangstype. Derfor er vi nødt til at teste det separat på hver enhed.
Vi er også nødt til at overveje arbejdsbelastningsmønsteret for dette scenario, dvs. vi skal forstå, hvordan belastningen fordeles på hver enhed. For eksempel, 500 brugere får adgang til applikationen via internettet, omkring 100 bruger en indbygget applikation på deres iOS-enhed, og yderligere 200 vil få adgang til applikationen fra deres oprindelige enhed på Android-applikationen.
Vi bør også overveje de geografiske placeringer af belastningen på serveren. For eksempel, 30% af brugerne har adgang fra USA, 50% fra Indien og hvile 20% fra andre steder. Det er obligatorisk at efterligne forskellige brugerplaceringer, da det vil have en meget stor indvirkning på serverne.
Test af alle 100% fra en enkelt placering giver forkerte resultater. Så det tilrådes at teste belastningen på serverne ved at give en anden placering. Cloudløsningen kan bruges til at efterligne forskellige geografiske placeringer.
b) Opret netværksbetingelser i realtid:
Her er vi nødt til at skabe forskellige netværksforhold og også kvaliteten af netværket som 3G-netværk, 2G-netværk, Wi-Fi med den bedste hastighed, gennemsnitshastighed og lav hastighed. Vi skal udføre netværksemulering for at skabe netværksforhold.
Vi bør også teste ydeevnen ved at give 50% båndbreddeforhold, vi kan opnå dette ved at gøre netværksemulering. Vi kan bruge ethvert værktøj som vindtunnel, shunra osv.
Test også netværket med hensyn til forskellige geografiske områder som 3G-netværk i Bangalore. 4G i Hyderabad osv. Også her skal vi udføre netværksemulering ved hjælp af passende værktøjer.
c) Opret realtidsenhedsbetingelser:
Dette er intet andet end applikationstypen på den mobile enhed, som om det er en tynd klientapplikation eller en tyk klientapplikation, hvad er operativsystemet på den mobile enhed, enhedstypen som iPhone, Nokia osv. Og enhver anden applikation som kører parallelt under brugen af denne særlige applikation osv., skal også testes som en del af scenarierne.
d) Test ydeevnen for hver komponent:
Efter at have oprettet alle ovennævnte scenarier, er vi nødt til at ydeevnestest applikationen inklusive al software og hardware. Saml nu alle de nødvendige målinger under belastningstesten.
Nogle af serverens metrics, der skal indsamles, er CPU-brug, CPU-belastning, behandlingstid, samlet byte tilgængelig, sendte pakker, modtagne pakker osv.
Nogle af de netværksmålinger, der skal indsamles, er pakker og byte sendt over netværket, pakker og byte modtaget over netværket, pakker faldt og total gennemsnitlig forsinkelse.
Enhedsmålinger, der skal indsamles, er CPU, hukommelsesudnyttelse, responstid osv. Og måler også alle transaktionssvaretider og -kapacitet.
Testmiljø for mobil applikationspræstation
Før vi opretter præstationsmiljøet til en mobilapplikation, skal vi forstå, hvad der er de mobile applikationer, der vil blive testet, hvad alle operativsystemer eller enheder vil blive testet og de forskellige geografiske placeringer også.
Derfor skal vi først skabe et miljø, der består af emulatorer og ægte enheder. Så hvad er en emulator? En emulator er en software, der kan installeres på vores bærbare eller stationære maskiner, og disse fungerer som mobile enheder. Vi kan generere enorm belastning ved hjælp af disse emulatorer, hvorfor de er bedst at bruge til belastningstestning af mobile applikationer.
På den anden side er rigtige enheder fysiske mobile enheder. Så vi er nødt til at kontrollere applikationsadfærden på hver enhed og på hvert netværk. Men vi vil ikke være i stand til at teste båndbredden, pakketab osv., Når flere enheder er forbundet til det samme netværk og har adgang til den samme applikation.
Den næste ting at overveje er applikationsenhedernes geografiske placering, dette er et obligatorisk og meget vigtigt aspekt, der skal overvejes, ellers vil vores testresultater ikke være som hvad der sker i den virkelige verdensscenarie.
Så når du har analyseret alt det ovenstående, skal du vælge det respektive belastningstestværktøj til at udføre præstationstestene.
Udfordringer for test af mobilapplikationstest
De udfordringer, vi står over for, når vi tester mobilapplikationer:
- Når vi har brug for at teste vores applikation på forskellige mobile enheder, skal vi organisere alle enheder som IOS, Android, Windows osv.
- Netværkssimulering er en anden udfordring, vi står overfor, dvs. vi har brug for at simulere netværk som 3G, 2G, 4G og wifi-netværk.
- Den tilgængelige hukommelse i de mobile enheder til håndtering af testkørslerne.
- Batterilevetiden på de mobile enheder.
Fejlfinding af ydelsesproblemer med mobilapplikationer
Når testkørslen er afsluttet, er det tid til at samle den præstationsflaskehals, der er identificeret under testkørslen. Når problemerne er konsolideret, skal vi identificere årsagen til problemet og rette dem.
Lad os se på nogle ydeevneproblemer med mobilapplikationer:
- En forsinkelse i svaret fra mobilapplikationen: Denne forsinkelse skyldes normalt hukommelsen eller cachelagring. I sådanne tilfælde tilrådes det at rydde cachen og køre testen igen.
- Ansøgning genstartes, hænges eller frøs: Kontroller i sådanne tilfælde softwaren, som om der er behov for opdateringer, tjek applikationskoden for enhver optimering, håndtering af caching er nogle områder, der skal undersøges.
Værktøjer til test af ydeevne til mobil applikationer
Værktøjerne kan variere afhængigt af enhedstypen og platformen.
Nogle af de mest anvendte værktøjer er angivet nedenfor.
Til Android-enheder:
robotter: Ved hjælp af dette værktøj kan vi registrere og afspille de flere trin til gennemførelse af testen. Klik på her for en Robotium tutorial .
Monkey Runner : Ved hjælp af dette værktøj kan vi køre vores tests på enhederne ved at forbinde dem til et skrivebord. Ved hjælp af grænsefladen til værktøjet kan vi få adgang til smartphonen.
For iOS-enheder:
Automator: Ved hjælp af dette værktøj kan vi trække og slippe arbejdsgange og automatisere dem.
Konklusion
Jeg er sikker på, at du ville have lært mere om mobilapplikationer, og hvordan du fortsætter og udfører belastningstestning på mobilapplikationer på en perfekt måde gennem denne informative vejledning.
Vores kommende vejledning vil orientere dig om, hvordan man udfører manuel præstationstest i enkle termer.
=> Besøg her for komplette ydeevne-test tutorials-serier
PREV-vejledning | NÆSTE vejledning
Anbefalet læsning
- Test af mobilapplikationers ydeevne ved brug af BlazeMeter
- Begyndervejledningen til test af webapplikationens ydeevne ved hjælp af WAPT Pro
- Vejledning til test af webapplikationssikkerhed
- Ydelsestest vs belastningstest vs stresstest (forskel)
- Sådan får du et mobilt testjob hurtigt - Karrierevejledning til mobil test (del 1)
- Webapplikation belastning, stress og ydeevne test ved hjælp af WAPT
- Hvordan udføres manuel test af ydeevne?
- Testværktøjer og serviceudbydere til penetration af mobile applikationer