Testování výkonu mobilních aplikací
⚡ Chytré shrnutí
Mobile App Performance Testing measures how quickly an application starts, how much battery and memory it consumes, how fast its APIs respond, and how gracefully it behaves on unreliable networks.
For any mobile app, performance is very critical. If your Mobile App does not perform well, the end user will uninstall your app and find another application that performs better.
Vaši mobilní aplikaci je třeba důkladně otestovat, než ji vydáte koncovému uživateli.
Strategie testování mobilních aplikací
Výkon aplikací na mobilním telefonu nebo jakémkoli chytrém zařízení se obvykle měří v následujících třech kategoriích.
- Výkon zařízení
- Výkon serveru/API
- Výkon sítě
The diagram below maps those three layers to their checks.
Výkon zařízení
Když klient zažívá pomalou aplikaci, je naštvaný.
For device performance, you will check following:
- App Start-Up: Jak dlouho trvá spuštění vaší aplikace? Je to první výkonnostní parametr, který posuzuje uživatel. Obecně platí, že poté, co uživatel klepne na ikonu aplikace, by se první obrazovka měla zobrazit za 1-2 sekundy.
- Battery Time while using an app: On constant use, some mobile apps consume a high amount of battery life and heat the phone. This normally happens when your app is using more resources than required, which creates a burden on the processor.
- Spotřeba paměti: Kdy Testování aplikace, měla by být zkontrolována spotřeba paměti aplikací. Implementací určitých funkcí do aplikace se také zvyšuje spotřeba paměti. Například v Android aplikace, když jsou implementována oznámení push, pak se spotřeba paměti zvyšuje.
V některých případech bylo pozorováno, že využití paměti celým operačním systémem je pouhých 14 %, ale nová aplikace spotřebovává 11 %. Tyto faktory je tedy třeba řešit před nasazením aplikace do reálného světa nebo předáním klientovi.
- Hardware/Software Variation: Při testování mobilní aplikace je povinné kontrolovat aplikace na různých zařízeních. Může se stát, že aplikace běží hladce na jednom zařízení, ale ne na druhém. Stejně jako u různých prodejců Android zařízení, můžeme aplikaci zkontrolovat na telefonech Samsung, HTC a Lenovo. Podobně je třeba aplikaci otestovat s různými specifikacemi RAM a procesoru, jako je 1 GB nebo 2 GB.
- Usage with Other Apps: Když testovaná aplikace běží paralelně s jinými aplikacemi, nemělo by docházet k rušení. Nejlepší způsob, jak to zkontrolovat, je přepnout testovanou aplikaci a jiné aplikace.
- App in background: When an app that is running in the background is retrieved, it should remain in the same state as it was before. If this scenario is not handled properly, then data get lost. Related lifecycle cases are covered in testování přerušení.
Výkon serveru/API
When the app is interacting with the server via API, the response time becomes critical to performance. For Server performance, you will check:
- Data to and from server: The app should handle data efficiently that is sent from the server. It must not take too much time while loading data. In certain apps, data is sent in a specified format, so before displaying it in the app, it should be converted to a relevant format. In this process, apps sometimes become slower and response time becomes longer.
- API Calls Generated from App: Počet volání z testované aplikace na server generovaných z aplikace by měl být nižší. V některých případech se pro stejnou funkci provádí více volání API. Pro lepší výkon by to mělo být řešeno menším počtem hovorů.
- Server Down Time: Due to any reason if the server is down or unreachable we can save data in the native database. So, whenever the server is down, we can show data stored in the native database. Another solution could be the failover database servers, i.e. if one of the servers is down or in maintenance phase the backup server should be available to switch over. The failover/backup server should be in continuous replication and synchronization with the main server.
Výkon sítě
Je třeba měřit výkon aplikace v různých sítích a síťových vlastnostech.
Pro výkon sítě zkontrolujete následující věci.
- Nervozita: Pokud dojde ke zpoždění při příjmu informací v síti, nazývá se to jittery. Je to problém s nespojenými sítěmi nebo sítěmi s přepínáním paketů. Jak jsou informace distribuovány do paketů, pakety mohou cestovat po odlišné cestě od odesílatele k přijímači. Když data dorazí na zamýšlené místo, stanou se zakódovaná, než byla původně odeslána. V případě Jitters by mobilní aplikace měla být dostatečně schopná to zvládnout.
You need to show the appropriate notifications to the end user, either to resend the request or wait till the system responds again.
- Ztráta paketů: V případě úplné ztráty paketů by aplikace měla být schopna znovu odeslat žádost o informace nebo by měla odpovídajícím způsobem generovat výstrahy. Pokud data nejsou úplná, uživatel nebude schopen porozumět informacím zobrazeným v aplikaci. To může být pro uživatele stresující. Je tedy lepší zobrazit vhodnou zprávu nebo vyzvat uživatele, aby to zkusil znovu.
- Rychlost sítě: The app needs to be checked on a variety of networks with variable speed. The app should be tested on 3G, 4G, and 5G networks. Both Wi-Fi and mobile networks are included in this. Also, the behavior of app should be monitored, especially when both networks are available and switching occurred from one network to another.
For example, an issue may arise in an app for the users while switching phone network from 4G to Wi-Fi and vice versa. In this case, the app becomes unresponsive and may require restarting the app for use.
Odstraňování problémů s výkonem mobilních aplikací
Po zjištění problémů/problémů Testování výkonuJe čas trace a opravte chyby.
Problém 1) Zpožděná nebo pomalá odezva mobilní aplikace.
Příčinou tohoto zpoždění může být RAM, mezipaměť atd.
Musíte zabít nepotřebné procesy nebo vymazat mezipaměť. Odstraňování problémů s připojením může vyřešit některé problémy, které způsobují zpoždění
Problém 2) Restartování aplikace, zamykání, zamrzání nebo nereagování.
Může to být opraveno některým z následujících kroků
- Optimalizace aplikačních kódů
- Software by měl být opraven a aktualizován.
- Automatické obnovení
- Správa RAM nebo v některých případech ROM při používání externích karet
- Wiping rozdělení mezipaměti
- Verifying the app working with other third-party apps and APIs
- Mapaping mobilní aplikace podle zařízení
Užitečné nástroje pro testování mobilních aplikací
Nástroje pro testování mobilních aplikací se liší podle zařízení nebo mobilního OS. Některé běžné nástroje pro testování výkonu mobilních aplikací jsou
ANDROID
- Robotium Je to jako Selenium pro mobilní aplikace. Tester může zaznamenat a přehrát několik kroků, které jsou nutné k provedení testování.
- Opičí běžec MonkeyRunner může spouštět testy na skutečných zařízeních připojených k PC nebo emulátorům. Nástroj má API, které umožňuje ovládat smartphone, tablet nebo emulátor zvenčí Android kód.
⚠️ Poznámka k verzi: Oba Android entries are legacy. Robotium has had no release since 2016, and Google marks MonkeyRunner unmaintained, pointing teams to UI Automator and its uiautomatorviewer inspector instead.
APPLE
- Automat (Mac) Automator is an application developed by Apple for macOS. It implements point-and-click (or drag and drop) creation of workflows for automating repetitive tasks into batches for quicker alteration. This saves time and effort over human intervention to manually change each file separately.
Oblasti využití
Mezi klíčové výzvy, kterým čelíte při testování výkonu, patří
- Organizace různých mobilních platforem a jejich operačních systémů
- Simulating connectivities like 3G, 4G, 5G or Wi-Fi, etc.
- Omezení mobilních zařízení, jako je spotřeba baterie a zdrojů
- Použitelnost mobilního telefonu
- Různé velikosti mobilních zařízení pro spuštění stejné aplikace
Nastavte testovací prostředí mobilních aplikací
Chcete-li nakonfigurovat testovací prostředí, musíte:
- Pochopení mobilní aplikace, kterou je třeba otestovat
- Identifikace různých operačních systémů, na kterých je třeba aplikaci spustit
- Vytvoření testovacího nastavení
- Sestavte emulátory nebo simulátory
- Prototyping skutečného nastavení
- Výběr vhodného nástroje pro testování
Kontrolní seznam pro testování výkonu mobilních aplikací
Testování výkonu mobilních aplikací je důležitým měřítkem před vydáním. Pro kontrolu se provádí testování výkonu
- Kolik paměti RAM je potřeba k používání této aplikace?
- Pro ověření rychlosti a doby odezvy APP v různých sítích a za různých okolností.
- Zajistěte realistickou uživatelskou zkušenost v několika síťových podmínkách
- Zajistěte dosažení požadovaných výsledků v případě více připojení
- Ujistěte se, že aplikace nespadne.
- Zajištění dobrého výkonu mobilních aplikací při používání dat, Wi-Fi nebo jiného připojení
- Sledování doby provozuschopnosti a úzká hrdla používání mobilního rozhraní API
- Pro zajištění maximálního počtu současných uživatelů
- Nakonec zkontrolujte mobilní aplikaci na její limity

