2013-01-16 6 views
9

Devo eseguire test delle prestazioni delle applicazioni native sulle piattaforme iOS e Android. I requisiti attuali dallo strumento sono:Strumenti di test delle prestazioni per applicazioni mobili native in iOS e Android

- The tool needs to check for the native applications CPU and memory usage. 
- If possible, we need to provide if there are any memory leaks also involved with the native application. 
- Check for network performance over the various networks - EDGE, 2G, 3G, 4G and wireless connections (various speeds). 
- If we can do Functional testing with the same application, it would be a great addition. 

Quello che ho potuto capire è il seguente:

1. UI Response Time 
◦ Download times for intermediate action requests (patch or network downloads), to be reduced with better compression techniques 
◦ User action and response rates of the application, need to be smoothened by employing better software rendering and faster animations 
◦ Provide a progress indicator to the user, along with completion notification 
2. Battery Life 
◦ Battery drain is non-linear, so minimize radio wake-up calls and 
◦ Use system events, instead of polling 
3. Network Bandwidth 
◦ Basically depends on - signal strength, carrier networks and network type (performance can be considered for slower networks, but no guarantee on the faster 2G & above). 
◦ Faster networks need to be checked basically for the functionality 
4. Memory and CPU 
◦ Overall device sluggishness needs to be monitored with respect to the response of the various actions. This can only be monitored by running the functional tests, and checking the actual RAM and CPU counters using a recording tool. 
◦ No application crashes should be seen, even after keeping the application open for a few days. 
5. Binary Size 
◦ Effects application load time 
◦ Effects load RAM size 
◦ Download & install times 
6. Tools 
◦ http://spb.com/pocketpc-software/wirelessmonitor/ 
◦ http://mobitest.akamai.com/m/index.cgi 
◦ http://www.neotys.com/product/mobile-load-testing.html 

La mia domanda è che ci sono altri parametri che possiamo aggiungere a quanto sopra per testare le prestazioni di un'applicazione nativa?

Inoltre, quali altri strumenti Open Source e commerciali suggeriresti, che soddisfa tutti i criteri sopra riportati per il test delle prestazioni di un'applicazione mobile nativa su piattaforme iOS, Android e WindowsOS?

risposta

2

Questa è una descrizione molto completa quando si tratta di test delle prestazioni delle app mobili. Ho un paio di piccole cose da aggiungere: Riguardo alla memoria: 1. Probabilmente vorresti anche monitorare il consumo di memoria di picco in qualsiasi istante. Ciò è particolarmente importante su Android perché la memoria disponibile per le app potrebbe effettivamente variare da dispositivo a dispositivo. E quindi, anche se potrebbe non causare problemi per te sul dispositivo su cui viene condotto il test, potrebbe causare problemi su qualche altro dispositivo di fascia bassa.

  1. Allo stesso modo, probabilmente si desidera monitorare anche le raccolte di dati inutili e quanti sono simultanei e quanti sono basati su allocazione gc. Perché gc può potenzialmente influire sui tempi di risposta delle app, specialmente se è causato da un alloc.

Per quanto riguarda la durata della batteria: 1. Si consiglia di verificare che qualsiasi wakelocks acquisiti dalla applicazione vengono immediatamente rilasciati. 2. L'app utilizza il timer inesatto il più possibile invece di timer precisi (ad esempio, usa setInexactRepeating invece del metodo setRepeating di AlarmManager).

Alcuni altri criteri: 1. Verificare che l'app stia memorizzando i dati nella cache in modo appropriato, non aggiornando il contenuto che ha già quando cambia l'orientamento dello schermo, ad esempio. 2. E anche le app migliori, potrebbero effettivamente condizionare il consumo dei dati in base al tipo di rete connessa: impazzire e precaricare le cose se connessi a Wifi, ma recuperare un po 'meno aggressivamente se connessi ai dati cellulari.

Spero che questo aiuti.