iOS和Android原生移动应用的性能测试工具



我必须在iOS和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.

我所能弄明白的是:

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

我的问题是,是否有其他的参数,我们可以添加到上面来测试本机应用程序的性能?

另外,您会推荐哪些其他开源和商业工具,满足上述所有标准,用于在iOS, Android和windowso平台上进行本机移动应用程序的性能测试?

这是一篇非常全面的关于手机应用性能测试的文章。我有几件小事要补充:关于内存:1. 您可能还希望监视任何时刻的峰值内存消耗。这在Android上尤其重要,因为应用程序的可用内存实际上可能因设备而异。因此,即使它可能不会对正在进行测试的设备造成问题,但它可能会在其他一些低端设备上造成问题。

  1. 类似地,您可能还希望监视正在发生的垃圾收集,以及有多少是并发的,有多少是基于分配的gc。因为gc可能会影响应用程序的响应时间,特别是当它是由分配引起的。

关于电池寿命:1. 您可能想要验证应用程序获得的任何唤醒是否被及时释放。2. 该应用程序尽可能使用不精确的计时器,而不是精确的计时器(例如,使用setInexactRepeating方法而不是AlarmManager的setRepeating方法)。

其他标准:1. 验证应用程序是否适当地缓存数据—例如,当屏幕方向改变时,不会刷新它已经拥有的内容。2. 甚至更好的应用程序,实际上可能会根据连接的网络类型来调整它们的数据消耗——如果连接的是Wifi,就会疯狂地预取数据,但如果连接的是蜂窝数据,就不会那么激进了。

最新更新