mobile application performance testing guide
Guia de proves de rendiment d'aplicacions mòbils:
En aquest Gamma explícita de tutorials sobre proves de rendiment, vam explorar el concepte de Proves de rendiment al núvol al nostre últim tutorial.
Aquí, aprendreu què és una aplicació mòbil, tipus d’aplicacions mòbils, enfocament d’aplicacions mòbils de proves de rendiment, com configurar un entorn de proves de rendiment de les aplicacions mòbils, com resoldre problemes de rendiment amb les aplicacions mòbils, els reptes implicats i les eines disponibles, etc. de manera detallada.
=> Feu clic aquí per obtenir una sèrie completa de tutorials de proves de rendiment
Què aprendreu:
- Visió general
- Què és una aplicació mòbil?
- L’arquitectura de les aplicacions mòbils
- Enfocament de proves de rendiment de l'aplicació mòbil
- Estratègia de rendiment de l'aplicació mòbil
- Entorn de proves de rendiment de l'aplicació mòbil
- Reptes de proves de rendiment de les aplicacions mòbils
- Resolució de problemes de rendiment amb aplicacions mòbils
- Eines de proves de rendiment de les aplicacions mòbils
- Conclusió
- Lectura recomanada
Visió general
Al món tecnològic actual, les aplicacions mòbils són àmpliament utilitzades que les aplicacions d’escriptori habituals. S'incrementa dràsticament el nombre d'usuaris que utilitzen telèfons intel·ligents per accedir a la majoria de les seves aplicacions que l'ordinador o un ordinador portàtil.
A més, l’usuari final esperarà una bona resposta de l’aplicació quan la faci servir. Per tant, el desenvolupador que crea les aplicacions mòbils ha de tenir-ho en compte mentre desenvolupa l’aplicació.
Ara les proves de rendiment són fonamentals, ja sigui una aplicació web normal o una aplicació en un dispositiu mòbil. Si una aplicació es posa en funcionament sense que es provi el rendiment i si l’usuari final s’enfronta a problemes de rendiment com una resposta lenta, etc., intentarà trobar una altra aplicació millor que tingui un rendiment millor.
Les proves de rendiment són costoses i també requereixen més temps. Per tant, molts clients eviten anar a fer proves de rendiment, però això ajudarà molt als problemes de producció. Per tant, qualsevol aplicació s'ha de provar a fons abans de posar-la a disposició de l'usuari final.
Què és una aplicació mòbil?
Les aplicacions mòbils són un conjunt de funcions predefinides dissenyades per funcionar en dispositius mòbils com ara telèfons intel·ligents, tauletes i altres telèfons amb funcions. No totes les aplicacions mòbils són iguals, hi ha tres tipus d’aplicacions mòbils diferents que es basen en la tecnologia que s’ha utilitzat per desenvolupar aquestes aplicacions.
Els tres tipus d'aplicacions mòbils inclouen:
- Aplicacions mòbils natives
- Aplicacions mòbils basades en web
- Aplicacions híbrides
# 1) Aplicacions mòbils natives:
Les aplicacions mòbils natives són aquelles aplicacions que s’executen amb els vostres propis telèfons intel·ligents o tauletes, que s’executen al sistema operatiu dels dispositius mòbils. Proporcionen un alt rendiment i també són molt fiables. Aquest tipus d'aplicacions també accedeixen a la resta d'aplicacions del dispositiu del telèfon intel·ligent, com ara fotos, llibreta d'adreces, etc.
Les aplicacions natives estan disponibles a la botiga d'aplicacions mòbils. Per a Android, tenim Play Store i per a iPhone tenim iTunes. Per tant, aquestes aplicacions es descarreguen de les seves respectives botigues i s’instal·len als dispositius mòbils.
Exemples de les aplicacions natives són una calculadora, calendari, aplicació de Facebook, etc.
# 2) Aplicacions mòbils basades en web:
Les aplicacions mòbils basades en web s’executen directament des del navegador i no s’instal·len al dispositiu mòbil.
Exemples Les aplicacions mòbils basades en web són jocs en línia, llocs de xarxes socials, etc.
# 3) Aplicacions híbrides:
Les aplicacions híbrides són similars a les aplicacions natives i s’executen dins del contenidor natiu, són una combinació d’aplicacions i utilitzen el navegador del dispositiu i no el navegador real per representar les pàgines web de l’aplicació.
Exemples de l’aplicació híbrida són Instagram, Yelp, etc.
L’arquitectura de les aplicacions mòbils
A la figura anterior , els telèfons intel·ligents i les tauletes són objecte de client. Inclouen els dispositius que solem utilitzar com el telèfon intel·ligent, les tauletes, la seva xarxa com 3G, 4G, etc. Un sistema operatiu de dispositius com Android, iOS, Windows, etc.
Xarxa de cèl·lules mòbils , Wireless, Internet i Firewall s’inclouen a la xarxa. Per a la xarxa de cèl·lules, veiem la intensitat del senyal, la congestió de la xarxa, els abandonaments, etc. Per a una xarxa sense fils, veiem la intensitat del senyal, la velocitat, etc.
Web, aplicació i base de dades es troben al costat del servidor on es fa la majoria de la feina.
Enfocament de proves de rendiment de l'aplicació mòbil
Les proves de rendiment de les aplicacions mòbils són diferents de les proves de rendiment de les aplicacions web. Els ordinadors portàtils o d’escriptori que s’utilitzen per accedir a les aplicacions web no pateixen gaire les condicions de xarxa deficients, inclosa la pèrdua de paquets o la latència.
Tot i que a les condicions de xarxa de les aplicacions mòbils, la pèrdua de paquets, la latència, el tipus de dispositiu que estem utilitzant com un telèfon intel·ligent o un dispositiu intel·ligent i l’amplada de banda són importants i no hem d’ignorar tots aquests factors mentre es considera la prova de rendiment de les aplicacions mòbils.
Abans de desenvolupar la vostra estratègia de rendiment, heu d’entendre quin tipus d’aplicació executeu al vostre dispositiu mòbil.
què significa referència indefinida en c ++
Hi ha tres tipus d'aplicacions:
- Aplicacions basades en navegador
- Aplicacions natives
- Aplicacions híbrides
# 1) Aplicacions basades en navegador:
Es pot accedir directament a aquest tipus d’aplicacions mitjançant un navegador mòbil i no necessiten cap programari addicional per descarregar-se o instal·lar-se al dispositiu.
Són lleugers i estan construïts a la mateixa pila en tot tipus de dispositius, com ara Android, iPhone, etc. disseny web sensible El moviment fa que, encara més, sigui més fàcil crear una aplicació basada en diversos navegadors, ja que podeu renderitzar l'aplicació a diferents mides de pantalla.
Aquest tipus d’aplicacions tenen inconvenients, ja que no s’hi pot accedir sense connexió a Internet, no tenen totes les funcions integrades al dispositiu i també solen semblar més lents per als usuaris.
Tan. mentre proveu el rendiment d’aquest tipus d’aplicacions, és important replicar la càrrega de l’usuari des d’un navegador mòbil i també és important provar la representació de la pàgina web en dispositius objectiu.
# 2) Aplicacions natives:
Aquest tipus d’aplicacions es construeixen en una plataforma concreta mitjançant el programari que s’instal·la directament al dispositiu.
Les aplicacions natives són més ràpides i més sensibles ja que es construeixen localment al dispositiu. Com que el codi de cada dispositiu és diferent, és a dir, per a iPhone, Android, etc., mentre que les proves de rendiment hem de considerar les proves a cada plataforma.
# 3) Aplicacions híbrides:
Les aplicacions híbrides són la combinació d’aplicacions navegador i natives. Estan compostes per un shell natiu que proporciona una experiència integrada ràpida.
Tot i que les proves de rendiment s’orienten a la càrrega generada pels usuaris d’aquesta aplicació híbrida al costat del servidor, a més de mesurar el rendiment de l’aplicació al dispositiu des d’una perspectiva de l’usuari final.
Llavors, com provem aquestes aplicacions mòbils?
Per provar aquestes aplicacions mòbils, hem de crear un entorn amb emuladors i dispositius reals. Els emuladors mòbils són programes que cal instal·lar als nostres portàtils o ordinadors de sobretaula que imitin una aplicació mòbil o una plataforma mòbil.
Per tant, mitjançant aquests emuladors podem generar una quantitat significativa de càrrega per a les proves de càrrega.
L’altre mètode és utilitzar dispositius reals, aquí tenim el dispositiu físicament i podem veure el rendiment de l’aplicació en cada dispositiu. Utilitzant dispositius reals, no tenim l’opció de generar la càrrega que és el nostre objectiu principal, però per fer-ho hem de tenir diversos dispositius reals.
No obstant això, si voleu provar el comportament de l'aplicació en un dispositiu específic, podeu utilitzar el dispositiu real, però per generar càrrega hem d'utilitzar emuladors.
El següent punt a tenir en compte en provar una aplicació mòbil és conèixer la ubicació d’accés de l’usuari final. És molt important saber si els usuaris accedeixen des de la mateixa ciutat, el mateix país o si estan repartits per tot el món, etc. Si planifiquem la nostra prova o entorn sense tenir-ho en compte, les nostres proves serien incorrectes.
El rendiment de l'aplicació en una aplicació mòbil, com ara un telèfon intel·ligent o un dispositiu intel·ligent, normalment es mesura en termes de rendiment de dispositiu, rendiment de servidor / API i rendiment de xarxa.
Hem de comprovar el següent a cada representació.
Rendiment del dispositiu:
- Temps d'inici de l'aplicació
- Durada de la bateria mentre s’utilitza l’aplicació
- Consum de memòria
- Variació de maquinari i programari
- Ús amb altres aplicacions
- Una aplicació que s’executa en segon pla
Rendiment del servidor / API:
- Dades des del servidor cap al servidor.
- Trucades API generades
- Temps d'inactivitat del servidor
Rendiment de la xarxa:
- Pèrdua de paquets
- Velocitat de la xarxa
Per tant, mentre escriviu l'enfocament per a les proves de rendiment de l'aplicació mòbil, heu de tenir en compte tots els punts anteriors i coincidir amb l'abast i els requisits del vostre projecte.
Estratègia de rendiment de l'aplicació mòbil
L'enfocament de la prova de rendiment difereix per a cada tipus d'aplicació mòbil. L’enfocament varia d’una aplicació a l’altra ja que cada aplicació es desenvolupa amb components diferents i el mecanisme de processament és diferent per a cadascuna.
Les aplicacions mòbils basades en navegadors actuen de manera diferent a l’aplicació normal del navegador web. Aquest comportament es deu a l’amplada de banda del pla de dades que utilitza l’usuari final i també depèn de la configuració dels dispositius mòbils.
El cost del desenvolupament d’aquest tipus d’aplicacions basades en navegadors serà menor, ja que el treball de desenvolupament consistiria a veure la seva compatibilitat amb els navegadors disponibles als dispositius mòbils.
Per tant, per a proves de rendiment, com ara aplicacions basades en navegadors mòbils, hem de replicar la càrrega de l'usuari al navegador. Ho podem fer mitjançant emuladors o qualsevol altre component addicional. A part de la càrrega de l'usuari als navegadors mòbils, també hem de provar la representació de la pàgina web als dispositius.
El cost de desenvolupament de les aplicacions mòbils natives és més gran. Les aplicacions s’instal·len directament al dispositiu, cosa que millora l’experiència de l’usuari, però l’aplicació depèn de la plataforma.
Per tant, si volem provar el rendiment d’aquest tipus d’aplicacions, hem de provar totes les plataformes dels dispositius mòbils com Android, iOS, Windows, etc. i també en tot tipus de dispositius, com ara telèfons intel·ligents, tauletes, etc.
Les aplicacions mòbils híbrides són una combinació d’aplicacions mòbils basades en navegadors i d’aplicacions mòbils natives, de manera que aquí hem de provar la càrrega de l’usuari al servidor i també hem de fer proves de rendiment completes en tots els dispositius i plataformes mòbils.
Per a qualsevol aplicació del dispositiu mòbil, hi ha dos factors principals que afecten el rendiment de l'usuari final:
- Sol·licitud al dispositiu mòbil
- Representació de la pàgina al dispositiu mòbil
# 1) Sol·licitud al dispositiu mòbil:
En aquest sentit, la sol·licitud es lliura al servidor i la resposta del servidor es genera en funció de la sol·licitud rebuda. Un cop generada la resposta al servidor, aquesta resposta es torna a enviar al dispositiu mòbil que ha enviat la sol·licitud inicial.
Aquí els paràmetres que cal examinar són la càrrega del servidor, els diferents tipus de xarxa com 3G, 4G, etc., una càrrega a cada xarxa i qualsevol altre component.
Els podem provar mitjançant emuladors, és a dir, podem generar els scripts i utilitzar emuladors per imitar la càrrega de l’usuari al servidor.
# 2) Representació de la pàgina al dispositiu mòbil:
La representació de la pàgina al dispositiu mòbil no és altra cosa que la resposta que es rep del servidor per a la sol·licitud que vam enviar des de la nostra aplicació mòbil.
Aquí els paràmetres que cal examinar són el sistema operatiu del dispositiu, la configuració del dispositiu mòbil, etc. Podem provar-los iniciant la sessió al dispositiu mòbil i supervisant-los.
Ara, fem una ullada detallada a cada pas esmentat a la figura anterior:
a) Creeu escenaris d'usuari en temps real:
De manera similar a les aplicacions habituals del navegador web, hem d’identificar els escenaris o les condicions que s’esperen al servidor en temps real. Hi haurà molts escenaris per provar.
Suposem una condició en què hi hagi una aplicació web que estigui disponible tant en ordinadors de sobretaula com en dispositius mòbils, també és nativa en dispositius Android i iOS. Aquí hem de desenvolupar un script de prova basat en el tipus d’accés a l’aplicació. Per tant, hem de provar-ho per separat en cada dispositiu.
A més, hem de tenir en compte el patró de càrrega de treball per a aquest escenari, és a dir, hem d’entendre com es distribueix la càrrega a cada dispositiu. Per exemple, 500 usuaris accediran a l'aplicació a través del web, uns 100 utilitzaran una aplicació nativa al seu dispositiu iOS i altres 200 accediran a l'aplicació des del seu dispositiu natiu a l'aplicació Android.
També hem de tenir en compte les ubicacions geogràfiques de la càrrega al servidor. Per exemple, El 30% dels usuaris accedeixen des dels EUA, el 50% des de l’Índia i el 20% restant des d’altres ubicacions. És obligatori imitar la ubicació de l’usuari, ja que tindrà un impacte molt gran als servidors.
Provar tot el 100% des d’una única ubicació donarà resultats equivocats. Per tant, es recomana provar la càrrega als servidors proporcionant una ubicació diferent. La solució al núvol es pot utilitzar per imitar diferents ubicacions geogràfiques.
b) Creeu condicions de xarxa en temps real:
Aquí, hem de crear diferents condicions de xarxa i també la qualitat de la xarxa com la xarxa 3G, la xarxa 2G, la Wi-Fi amb la millor velocitat, velocitat mitjana i baixa velocitat. Hem de fer una emulació de xarxa per crear condicions de xarxa.
També hauríem de provar el rendiment donant unes condicions d’amplada de banda del 50%, per aconseguir-ho fent una emulació de xarxa. Podem utilitzar qualsevol eina com el túnel del vent, Shunra, etc.
A més, proveu la xarxa respecte a diferents geografies com la xarxa 3G a Bangalore. 4G a Hyderabad, etc. Aquí també hem de fer emulacions de xarxa mitjançant les eines adequades.
c) Creeu condicions del dispositiu en temps real:
Això no és res més que el tipus d’aplicació del dispositiu mòbil, com ara si es tracta d’una aplicació de client Thin o d’una aplicació de client Thick, quin és el sistema operatiu del dispositiu mòbil, el tipus de dispositiu com iPhone, Nokia, etc. i qualsevol altra aplicació que funcionarà en paral·lel durant l'ús d'aquesta aplicació en concret, etc., també s'ha de provar com a part dels escenaris.
d) Proveu el rendiment de cada component:
Després de crear tots els escenaris anteriors, hem de provar el rendiment de l'aplicació, inclòs tot el programari i maquinari. Ara recopileu totes les mètriques necessàries durant la prova de càrrega.
Algunes de les mètriques del costat del servidor que cal recollir són l’ús de la CPU, la càrrega de la CPU, el temps de processament, el byte total disponible, els paquets enviats, els paquets rebuts, etc.
Algunes de les mètriques de la xarxa que cal recollir són els paquets i bytes enviats per la xarxa, els paquets i els bytes rebuts a la xarxa, els paquets caiguts i el retard mitjà total.
Les mètriques del dispositiu que es recopilaran són la CPU, la utilització de la memòria, el temps de resposta, etc., i també mesuren tots els temps de resposta i rendiment de la transacció.
Entorn de proves de rendiment de l'aplicació mòbil
Abans de configurar l’entorn de proves de rendiment per a una aplicació mòbil, hem d’entendre quines són les aplicacions mòbils que es provaran, què es provaran tots els sistemes operatius o dispositius i les diferents ubicacions geogràfiques.
Per tant, en primer lloc, hem de crear un entorn que consisteixi en emuladors i dispositius reals. Llavors, què és un emulador? Un emulador és un programari que es pot instal·lar als nostres ordinadors portàtils o equips d'escriptori, que actuen com a dispositius mòbils. Podem generar una càrrega enorme amb aquests emuladors, per tant, és millor utilitzar-los per provar càrregues de qualsevol aplicació mòbil.
D'altra banda, els dispositius reals són dispositius mòbils físics. Per tant, hem de verificar el comportament de l’aplicació a cada dispositiu i a cada xarxa. Però no podrem provar l’amplada de banda, la pèrdua de paquets, etc., quan hi hagi diversos dispositius connectats a la mateixa xarxa i accedeixin a la mateixa aplicació.
El següent que s’ha de tenir en compte és la ubicació geogràfica dels dispositius de l’aplicació, aquest és un aspecte obligatori i molt important a tenir en compte o bé els resultats de les nostres proves no seran el que passa a l’escenari del món real.
Per tant, un cop analitzeu tot l’anterior, seleccioneu l’eina de prova de càrrega respectiva per dur a terme les proves de rendiment.
Reptes de proves de rendiment de les aplicacions mòbils
Entre els reptes als quals ens enfrontem mentre provem les aplicacions per a mòbils:
- Quan hem de provar la nostra aplicació en diferents dispositius mòbils, hem d’organitzar tots els dispositius com IOS, Android, Windows, etc.
- La simulació de xarxa és un altre repte que afrontarem, és a dir, que hem de simular xarxes com les xarxes 3G, 2G, 4G i wifi.
- La memòria disponible als dispositius mòbils per gestionar les proves.
- La durada de la bateria dels dispositius mòbils.
Resolució de problemes de rendiment amb aplicacions mòbils
Un cop finalitzada la prova, és hora de reunir el coll d'ampolla de rendiment identificat durant la prova. Un cop consolidats els problemes, hem d’identificar la causa arrel del problema i solucionar-los.
Vegem alguns problemes de rendiment amb les aplicacions mòbils:
- Un retard en la resposta de l'aplicació mòbil: Aquest retard sol ser causat per la memòria o per la memòria cau. En aquests casos, es recomana esborrar la memòria cau i tornar a executar la prova.
- L'aplicació es reinicia, penja o es congela un temps: En aquests casos, comproveu el programari com si calgués fer actualitzacions, comproveu el codi de l’aplicació per si hi ha optimitzacions, el control de la memòria cau són algunes de les àrees que cal examinar.
Eines de proves de rendiment de les aplicacions mòbils
Les eines poden variar en funció del tipus de dispositiu i de la plataforma.
A continuació es detallen algunes de les eines més utilitzades.
Per a dispositius Android:
robots: Mitjançant aquesta eina, podem enregistrar i reproduir els diversos passos per dur a terme la prova. Feu clic a aquí per obtenir un tutorial de Robotium .
Monkey Runner : Mitjançant aquesta eina podem executar les nostres proves als dispositius connectant-los a un escriptori. Mitjançant la interfície de l'eina podem accedir al telèfon intel·ligent.
Per a dispositius iOS:
Automatitzador: Mitjançant aquesta eina podem arrossegar i deixar anar els fluxos de treball i automatitzar-los.
Conclusió
Estic segur que hauríeu après més sobre les aplicacions mòbils i sobre com seguir endavant i realitzar proves de càrrega a les aplicacions mòbils d’una manera perfecta mitjançant aquest tutorial informatiu.
El nostre proper tutorial us informarà sobre com realitzar proves de rendiment manuals en termes senzills.
=> Visiteu aquí per obtenir una sèrie completa de tutorials de proves de rendiment
millor lloc de descàrrega de música per a Android
Lectura recomanada
- Proves de rendiment d'aplicacions mòbils mitjançant BlazeMeter
- Guia per a principiants sobre proves de rendiment de les aplicacions web mitjançant WAPT Pro
- Guia de proves de seguretat d'aplicacions web
- Prova de rendiment vs Prova de càrrega vs Prova d’estrès (diferència)
- Com obtenir una feina ràpida de proves de mòbils: Guia professional de proves de mòbils (primera part)
- Proves de càrrega, esforç i rendiment d'aplicacions web mitjançant WAPT
- Com es realitzen proves de rendiment manuals?
- Eines i proveïdors de serveis de proves de penetració d'aplicacions mòbils