android - 适用于 iOS 和 Android 中的 native 移动应用程序的性能测试工具

标签 android ios native performance-testing

<分区>

我必须在 iOS 和 Android 平台上对 native 应用程序进行性能测试。该工具的当前要求是:

- 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

我的问题是,我们是否可以将任何其他参数添加到上述内容中以测试 native 应用程序的性能?

此外,您会推荐哪些其他开源和商业工具,它们满足上述所有 iOS、Android 和 Windows 操作系统平台上的 native 移动应用程序性能测试标准?

最佳答案

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

  1. 以类似的方式,您可能还想监视垃圾收集的发生,有多少是并发的,有多少是基于分配的 gc。因为 gc 可能会影响应用程序响应时间,特别是如果它是由分配引起的。

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

一些其他标准: 1. 验证应用程序是否适本地缓存数据——例如,当屏幕方向改变时不刷新它已有的内容。 2. 甚至更好的应用程序,实际上可能会根据所连接的网络类型来调节它们的数据消耗 - 如果连接到 Wifi 会疯狂并预取一些东西,但如果连接到蜂窝数据则不太积极地获取数据。

希望这对您有所帮助。

关于android - 适用于 iOS 和 Android 中的 native 移动应用程序的性能测试工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14356813/

相关文章:

java - OpenCV 中 NativeCameraView 和 JavaCameraView 的区别

java - 在 Windows 上调用 .so 文件中的 native 方法的可能性

android - 图书馆项目和资源

iOS:如何从我的应用程序中打开 Facebook 应用程序中的特定帖子?

android - 调用 Bitmap.createBitmap 时出现 NullPointerException

ios - 从 iOS 共享扩展获取 PHAsset

ios - React Native IOS build clang : error: linker command failed with exit code 1 (use -v to see invocation)

ios - 如何像IOS原生消息App添加联系人功能?

Android:UI 协作(Jenkins+Spoon+?)

android - Robolectric 3 GooglePlayServicesNotAvailableException