简单的Android自动化测试之Monkey——随机点击测试

  本来是做Web后端的,来公司实习变成微信小程序前端了,到这周变成Android APP测试人员了,也是微醺啊。

  由于对手工测试终究是有些抵触,所有昨天小试了一下不用写代码的自动化压力测试,在此记下我的心得。

  一、Monkey与Android SDK之间的关系

  每个Android手机里都有Monkey工具,Monkey测试是随机模拟手指的一系列操作,此工具不可视化,需Android SDK中的adb来调用它。

  二、环境配置

  开始测试之前需要搭配的环境:Java的JDK、Android SDK、一台Android手机。由于本身就是做Web的,而且也学习过Android,所以这些软件电脑里就有现成的。如何配置JDK和SDK环境变量我就不多说了,网上一搜太多了。

  三、正式测试

  1. 测试时需以管理员身份运行cmd(命令提示符)。

  2. 手机以小米8SE为例,需进入开发者模式,开启开发者选项,连接方式为传输文件,打开USB调试,打开USB安装(ps: 允许通过USB安装应用)、USB调试(安全设置)(ps: 允许通过修改权限或模拟点击)。

  2. adb start-server 此命令是开启adb服务;adb kill-server 此命令是关闭adb服务。

  3. adb install xxx.apk

   安装apk到手机上,xxx.apk电脑上安装包的路径(如:F:\Monkey\xxx.apk);也可以用手机直接安装apk。

  4. adb shell monkey -p com.android.xxx 1000(-p com.andoir.xxx是指定APP的包名,不加会对手机进行全局操作;1000为进行随机操作的次数)

   但是这样测试会触发到音量键和状态栏,所以要根据需求要做一些改良。

  5. adb shell settings put global policy_control immersive.full=* (此命令为全屏状态,可以隐藏状态栏,不过也会对其它应用造成影响)

   adb shell settings put global policy_control null(使用此命令恢复状态栏)

   (参考资料:http://www.cnblogs.com/ssyimeng/p/9777654.html)

  6. 加上 --pct-syskeys 0 可屏蔽掉音量键,如:adb shell monkey -p com.android.xxx --pct-syskeys 0 1000

   (参考资料:http://www.cnblogs.com/ssyimeng/p/9777654.html)

  7. 当然日志肯定是不能少的,在末尾加上 >d:\xxx.txt,如:adb shell monkey -p com.android.xxx --pct-syskeys 0 1000 > F:\Monkey\log.txt

  至此,最终的测试命令就出来了。

  四、报错分析

  在测试的时候若遇到错误,黑窗口会显示,如下图:

  

  这时,我们就需要用到这里的seed,来重复报错的操作,来查看错误是如何触发的。

  

  命令为:adb shell monkey -p com.android.xxx -s 1539935198710 100

  五、总结

  以上,是我个人对Monkey测试的一些心得,我也仅仅是一知半解,Monkey测试的其它命令可输入:adb shell monkey -help 来查看。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Monkey自动化测试是一种常见的移动应用程序测试方法。它通过模拟真实用户在移动设备上的操作,来检测应用程序是否存在错误和异常。Monkey测试通常通过随机生成的用户输入和事件来模拟对应用程序的操作,例如触摸、滑动、按键等。这种测试方法可以帮助开发者在不同场景下对移动应用程序的稳定性、可靠性和性能进行综合评估。 Monkey自动化测试具有以下优势: 1. 覆盖全面:Monkey测试通过随机生成的用户操作,可以模拟出各种不同的用户使用情况,能够对应用程序进行广泛而全面的测试,提高测试覆盖率。 2. 自动化执行:Monkey测试是自动化的,只需编写好相应的脚本,并设置好相关参数,就可以自动执行测试过程,提高测试效率。 3. 压力测试Monkey测试可以模拟大量用户同时使用应用,对应用程序的并发性能进行测试,检测其是否能够正常处理大量用户同时操作的情况。 4. 弱点检测:Monkey测试可以通过大量的随机事件和用户输入,发现应用程序的潜在问题和漏洞,帮助开发者及时修复和改进。 5. 高效节省成本:相比手工测试Monkey测试可以大大减少测试人力和时间成本,提高测试效率和精度。 尽管Monkey测试有一些局限性,例如无法完全模拟真实用户的行为和需求,但作为一种常见的移动应用程序测试方法,它仍然是一种相对高效和经济的测试方式,对于移动应用程序的稳定性和性能评估具有一定的指导性和参考价值。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值