我的新书《Android App开发入门与实战》已于2020年8月由人民邮电出版社出版,欢迎购买。点击进入详情
Monkey作为一款Android SDK自带的测试工具,主要用来对APP进行压力测试。
关于Monkey的一些使用,可以参考这篇博客:https://www.jianshu.com/u/ab6ae567d03f
Monkey命令:
用一个简单的命令来测试吧:
adb shell monkey -p your package name --throttle 100 --pct-touch 50 --pct-motion 50 -v -v 1000 >c:\monkey.txt
简单的意思是执行1000次操作,每次操作间隔时间是100毫秒,--pct-touch和--pct-motion各占50%的比例。
网上找了一个图,看上去能直观一些:
有个问题是:
运行了这个命令后,在monkey.txt文件中提示:
:Monkey: seed=1518434030150 count=1000
:AllowPackage: la.xiong.androidqui
:IncludeCategory: android.intent.category.LAUNCHER
:IncludeCategory: android.intent.category.MONKEY
// Selecting main activities from category android.intent.category.LAUNCHER
// Selecting main activities from category android.intent.category.MONKEY
** No activities found to run, monkey aborted.
奇怪了,难道没有找到启动的actvity?
后来想了想,会不会是包名写错了?
然后去AndroidManifest.xml文件里看了下package,是对的呀?
然后去build.gradle里面看了一下,原来这里面定义了一个applicationId,而这个的值跟package的值不一样。
把monkey的命令中的包名改成applicationId的值就OK了。
顺便说一下,如果build.gradle里有定义applicationId,那app的包名以这个为准;
如果没有定义,那么以AndroidManifest.xml里面定义的package的值为准。