Android 自动测试 monkey

Android 冒烟测试


安装配置monkey

使用monkey

  1. 查看adb 版本
adb version
  1. 查看当前可用设备
adb devices

  1. 查看monkey 帮助
adb shell monkey -help
  1. 执行1000此随机事件,不管是什么软件, COUNT 设置执行的次数
    这里设置为1000
adb shell monkey 1000
  1. 指定某个APP,执行1000此随机事件,不管是什么软件, -p 指定被测应用的包名
adb shell monkey -p com.xdstock.app.andriod.client 1000
  1. -s 设置种子数(相当于设置一个路径,因为monkey是
    随机事件,所以为了使回归路径一致就需要设置相同的seed值)
adb shell monkey 100 -s 5

如果想重现上面例子的路径下次执行的-s也必须为5

  1. --throttle 设置每次随机事件的时间间隔(单位:毫秒)
adb shell monkey 100 --throttle 500

如果想设置随机时间的时间间隔区间,可用使用 --throttle time --randomize-throttle

adb shell monkey 100 --throttle 500 --randomize-throttle

说明:执行一百次monkey随机事件,每次事件的间隔在0到500毫秒之间不固定

  1. -v 设置日志级别最多(默认一个-v)
adb shell monkey -v 100

如需更详细的日志可以加多个-v, 最多3个

adb shell monkey -v -v -v 100
  1. --ignore-crashes 运行中忽略crash,遇到crash依然把后面的事件跑完
adb shell monkey --ignore-crashes -v 100
  1. --ignore-timeouts 运行中忽略ANR,遇到ANR依然把后面的事件跑完
adb shell monkey --ignore-timeouts -v 100
  1. --ignore-native-crashes 忽略monkey本身的异常,直到事件执行完毕
adb shell monkey --ignore-native-crashes -v 100
  1. 设置事件百分比,所有的百分比加起来不能超过100%
    <ol>
    <li>触摸事件百分比,即参数--pct-touch</li>
    <li>滑动事件百分比,即参数--pct-motion</li>
    <li>缩放事件百分比,即参数--pct-pinchzoom</li>
    <li>轨迹球事件百分比,即参数--pct-trackball</li>
    <li>屏幕旋转事件百分比,即参数--pct-rotation</li>
    <li>基本导航事件百分比,即参数--pct-nav</li>
    <li>主要导航事件百分比,即参数--pct-majornav</li>
    <li>系统事件百分比,即参数--pct-syskeys</li>
    <li>Activity启动事件百分比,即参数--pct-appswitch</li>
    <li>键盘翻转事件百分比,即参数--pct-flip</li>
    <li>其他事件百分比,即参数--pct-anyevent</li>
    </ol>
    例如,设置点击事件占20%:
adb shell monkey --pct-touch 20 -v 100
  1. 运行并生成.txt的日志文件
adb shell monkey -p com.xxxx.xxx.xxx -v -v -v 1000 > Desktop/monkeytestOne.txt

monkey日志分析

zhenglian:~ tacker$ adb shell monkey -p com.xdstock.app.andriod.client -v 1000
:Monkey: seed=1484169407074 count=1000
:AllowPackage: com.xxx.xxx.xxx                       //---> 测试的包名
:IncludeCategory: android.intent.category.LAUNCHER
:IncludeCategory: android.intent.category.MONKEY
// Event percentages:
//   0: 15.0%                       //---> 触摸
//   1: 10.0%                       //---> 滑动
//   2: 2.0%                        //---> 缩放
//   3: 15.0%                       //---> 轨迹球
//   4: -0.0%                       //---> 屏幕旋转
//   5: 25.0%                       //---> 基本导航事件
//   6: 15.0%                       //---> 主导航事件
//   7: 2.0%                        //---> 系统事件
//   8: 2.0%                        //---> Activity 启动事件
//   9: 1.0%                        //---> 键盘翻转事件
//   10: 13.0%                      //---> 其他事件
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Touch (ACTION_DOWN): 0:(626.0,215.0)
:Sending Touch (ACTION_UP): 0:(628.23285,221.56313)
:Sending Touch (ACTION_DOWN): 0:(347.0,773.0)
:Sending Touch (ACTION_UP): 0:(347.19254,770.814)
:Sending Touch (ACTION_DOWN): 0:(328.0,195.0)
:Sending Touch (ACTION_UP): 0:(321.54346,187.92857)
:Sending Touch (ACTION_DOWN): 0:(56.0,1187.0)
:Sending Touch (ACTION_UP): 0:(63.43934,1192.9033)
:Sending Touch (ACTION_DOWN): 0:(48.0,1080.0)
:Sending Touch (ACTION_UP): 0:(55.92652,1061.622)
:Sending Trackball (ACTION_MOVE): 0:(4.0,-1.0)
:Sending Touch (ACTION_DOWN): 0:(179.0,739.0)
:Sending Touch (ACTION_UP): 0:(175.34604,741.4012)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Trackball (ACTION_MOVE): 0:(-5.0,4.0)
:Sending Touch (ACTION_DOWN): 0:(306.0,683.0)
:Sending Touch (ACTION_UP): 0:(298.94794,663.2318)
:Sending Trackball (ACTION_MOVE): 0:(-4.0,-2.0)
:Sending Touch (ACTION_DOWN): 0:(691.0,1147.0)
:Sending Touch (ACTION_UP): 0:(682.62244,1130.4384)
:Sending Touch (ACTION_DOWN): 0:(420.0,1209.0)
:Sending Touch (ACTION_UP): 0:(412.41544,1202.9391)
:Sending Trackball (ACTION_MOVE): 0:(3.0,-2.0)
:Sending Touch (ACTION_DOWN): 0:(711.0,985.0)
:Sending Touch (ACTION_UP): 0:(704.8758,984.45935)
Can't open carrierweekinfo-conf.xml
    //[calendar_time:2016-12-30 10:07:35.078  system_uptime:327922193]
    // Sending event #100
    //[calendar_time:2016-12-30 10:07:35.162  system_uptime:327922194]
    // Sending event #100
:Sending Trackball (ACTION_MOVE): 0:(-2.0,0.0)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Trackball (ACTION_MOVE): 0:(3.0,-4.0)
:Sending Touch (ACTION_DOWN): 0:(47.0,1131.0)
:Sending Touch (ACTION_UP): 0:(109.77768,1186.3334)
:Sending Trackball (ACTION_MOVE): 0:(-1.0,0.0)
:Sending Trackball (ACTION_MOVE): 0:(0.0,4.0)
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Touch (ACTION_DOWN): 0:(396.0,1229.0)
:Sending Touch (ACTION_UP): 0:(407.49582,1226.1687)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Touch (ACTION_DOWN): 0:(290.0,502.0)
:Sending Touch (ACTION_UP): 0:(234.55066,445.36554)
:Sending Trackball (ACTION_MOVE): 0:(-4.0,-4.0)
    //[calendar_time:2016-12-30 10:07:35.397  system_uptime:327922430]
    // Sending event #200
:Sending Trackball (ACTION_MOVE): 0:(-1.0,-2.0)
:Sending Trackball (ACTION_MOVE): 0:(-5.0,-4.0)
:Sending Touch (ACTION_DOWN): 0:(681.0,650.0)
:Sending Touch (ACTION_UP): 0:(678.16254,653.8383)
:Sending Touch (ACTION_DOWN): 0:(57.0,121.0)
:Sending Touch (ACTION_UP): 0:(17.847889,25.810427)
    // activityResuming(com.xdstock.app.andriod.client)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Trackball (ACTION_MOVE): 0:(3.0,-1.0)
:Sending Trackball (ACTION_MOVE): 0:(1.0,-3.0)
:Sending Touch (ACTION_DOWN): 0:(235.0,79.0)
:Sending Touch (ACTION_UP): 0:(234.88528,79.73482)
    // Allowing start of Intent { cmp=com.xdstock.app.andriod.client/.home.view.impl.HomeSearchMSPViewImpl } in package com.xdstock.app.andriod.client
:Sending Touch (ACTION_DOWN): 0:(208.0,783.0)
:Sending Touch (ACTION_UP): 0:(220.73349,773.8958)
:Sending Touch (ACTION_DOWN): 0:(364.0,1156.0)
:Sending Touch (ACTION_UP): 0:(370.3684,1145.2845)
:Sending Touch (ACTION_DOWN): 0:(23.0,486.0)
:Sending Touch (ACTION_UP): 0:(21.318256,508.3691)
:Sending Trackball (ACTION_MOVE): 0:(2.0,3.0)
    //[calendar_time:2016-12-30 10:07:36.357  system_uptime:327923390]
    // Sending event #300
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Flip keyboardOpen=false
:Sending Touch (ACTION_DOWN): 0:(689.0,1073.0)
:Sending Touch (ACTION_UP): 0:(689.0984,1076.385)
    // activityResuming(com.xdstock.app.andriod.client)
:Sending Touch (ACTION_DOWN): 0:(656.0,444.0)
:Sending Touch (ACTION_UP): 0:(657.84174,444.96918)
:Sending Touch (ACTION_DOWN): 0:(308.0,1194.0)
:Sending Touch (ACTION_UP): 0:(284.70468,1198.6243)
:Sending Touch (ACTION_DOWN): 0:(329.0,384.0)
:Sending Touch (ACTION_UP): 0:(327.12775,369.02747)
:Sending Touch (ACTION_DOWN): 0:(639.0,977.0)
:Sending Touch (ACTION_UP): 0:(720.0,889.2017)
:Sending Touch (ACTION_DOWN): 0:(152.0,698.0)
:Sending Touch (ACTION_UP): 0:(170.29561,686.3321)
:Sending Touch (ACTION_DOWN): 0:(215.0,974.0)
:Sending Touch (ACTION_UP): 0:(216.17403,974.9675)
:Sending Trackball (ACTION_MOVE): 0:(-3.0,-2.0)
:Sending Touch (ACTION_DOWN): 0:(268.0,625.0)
:Sending Touch (ACTION_UP): 0:(273.2784,622.6929)
:Sending Touch (ACTION_DOWN): 0:(36.0,382.0)
:Sending Touch (ACTION_UP): 0:(31.11044,387.90247)
:Sending Trackball (ACTION_MOVE): 0:(-2.0,-5.0)
:Sending Touch (ACTION_DOWN): 0:(526.0,803.0)
:Sending Touch (ACTION_UP): 0:(538.4675,807.8256)
    //[calendar_time:2016-12-30 10:07:37.511  system_uptime:327924544]
    // Sending event #400
    //[calendar_time:2016-12-30 10:07:37.512  system_uptime:327924545]
    // Sending event #400
:Sending Touch (ACTION_DOWN): 0:(711.0,1043.0)
:Sending Touch (ACTION_UP): 0:(658.15015,1004.91315)
    // Rejecting start of Intent { act=android.intent.action.CALL_BUTTON cmp=com.android.contacts/.activities.PeopleActivity } in package com.android.contacts
:Sending Trackball (ACTION_MOVE): 0:(-2.0,2.0)
:Sending Touch (ACTION_DOWN): 0:(315.0,316.0)
:Sending Touch (ACTION_UP): 0:(315.43454,313.9006)
:Sending Touch (ACTION_DOWN): 0:(637.0,1212.0)
:Sending Touch (ACTION_UP): 0:(650.17126,1200.3177)
:Sending Touch (ACTION_DOWN): 0:(533.0,116.0)
:Sending Touch (ACTION_UP): 0:(527.76404,122.64124)
:Sending Trackball (ACTION_MOVE): 0:(4.0,3.0)
:Sending Trackball (ACTION_MOVE): 0:(4.0,3.0)
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Touch (ACTION_DOWN): 0:(182.0,968.0)
:Sending Touch (ACTION_UP): 0:(180.04451,967.914)
:Sending Touch (ACTION_DOWN): 0:(59.0,1099.0)
:Sending Touch (ACTION_UP): 0:(63.1565,1100.9329)
:Sending Touch (ACTION_DOWN): 0:(160.0,648.0)
:Sending Touch (ACTION_UP): 0:(171.21176,659.42303)
:Sending Touch (ACTION_DOWN): 0:(471.0,296.0)
:Sending Touch (ACTION_UP): 0:(474.7892,296.1593)
:Sending Touch (ACTION_DOWN): 0:(525.0,732.0)
:Sending Touch (ACTION_UP): 0:(540.36957,727.0222)
:Sending Touch (ACTION_DOWN): 0:(28.0,639.0)
:Sending Touch (ACTION_UP): 0:(33.681583,645.9304)
:Sending Trackball (ACTION_MOVE): 0:(-1.0,-5.0)
:Sending Trackball (ACTION_MOVE): 0:(3.0,2.0)
:Sending Trackball (ACTION_MOVE): 0:(0.0,3.0)
    //[calendar_time:2016-12-30 10:07:37.953  system_uptime:327924986]
    // Sending event #500
:Sending Touch (ACTION_DOWN): 0:(704.0,316.0)
:Sending Touch (ACTION_UP): 0:(703.73676,318.3216)
:Sending Touch (ACTION_DOWN): 0:(39.0,1155.0)
:Sending Touch (ACTION_UP): 0:(59.066753,1196.1931)
:Sending Touch (ACTION_DOWN): 0:(664.0,1011.0)
:Sending Touch (ACTION_UP): 0:(646.54816,1024.3818)
:Sending Touch (ACTION_DOWN): 0:(13.0,364.0)
:Sending Touch (ACTION_UP): 0:(15.400623,374.49005)
:Sending Trackball (ACTION_MOVE): 0:(2.0,-5.0)
:Sending Touch (ACTION_DOWN): 0:(42.0,327.0)
:Sending Touch (ACTION_UP): 0:(41.867172,336.35474)
:Sending Touch (ACTION_DOWN): 0:(173.0,1022.0)
:Sending Touch (ACTION_UP): 0:(245.828,942.9257)
:Sending Trackball (ACTION_MOVE): 0:(4.0,0.0)
:Sending Touch (ACTION_DOWN): 0:(176.0,13.0)
:Sending Touch (ACTION_UP): 0:(179.3588,25.73448)
:Sending Trackball (ACTION_MOVE): 0:(-2.0,1.0)
:Sending Touch (ACTION_DOWN): 0:(659.0,827.0)
    //[calendar_time:2016-12-30 10:07:38.800  system_uptime:327925833]
    // Sending event #600
:Sending Touch (ACTION_UP): 0:(642.80664,738.9083)
:Sending Touch (ACTION_DOWN): 0:(272.0,413.0)
:Sending Touch (ACTION_UP): 0:(263.0613,426.05515)
:Sending Trackball (ACTION_MOVE): 0:(3.0,3.0)
:Sending Trackball (ACTION_MOVE): 0:(-3.0,-1.0)
:Sending Trackball (ACTION_MOVE): 0:(2.0,-3.0)
:Sending Trackball (ACTION_MOVE): 0:(0.0,-1.0)
:Sending Touch (ACTION_DOWN): 0:(102.0,920.0)
:Sending Touch (ACTION_UP): 0:(100.50528,927.96704)
:Sending Trackball (ACTION_MOVE): 0:(-4.0,-1.0)
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Trackball (ACTION_MOVE): 0:(-3.0,0.0)
    //[calendar_time:2016-12-30 10:07:39.343  system_uptime:327926376]
    // Sending event #700
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Touch (ACTION_DOWN): 0:(378.0,1023.0)
:Sending Touch (ACTION_UP): 0:(358.53064,1010.49554)
:Sending Touch (ACTION_DOWN): 0:(28.0,71.0)
:Sending Touch (ACTION_UP): 0:(41.35172,66.56524)
:Sending Touch (ACTION_DOWN): 0:(407.0,826.0)
:Sending Touch (ACTION_UP): 0:(408.63123,832.1906)
:Sending Touch (ACTION_DOWN): 0:(130.0,1077.0)
:Sending Touch (ACTION_UP): 0:(142.4488,1086.3716)
:Sending Trackball (ACTION_MOVE): 0:(4.0,2.0)
:Sending Touch (ACTION_DOWN): 0:(59.0,734.0)
:Sending Touch (ACTION_UP): 0:(86.33307,709.5014)
:Sending Touch (ACTION_DOWN): 0:(606.0,830.0)
:Sending Touch (ACTION_UP): 0:(589.3896,853.6812)
:Sending Touch (ACTION_DOWN): 0:(114.0,680.0)
:Sending Touch (ACTION_UP): 0:(48.745926,671.23145)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Touch (ACTION_DOWN): 0:(19.0,96.0)
:Sending Touch (ACTION_UP): 0:(16.348267,84.01233)
:Sending Touch (ACTION_DOWN): 0:(218.0,1224.0)
:Sending Touch (ACTION_UP): 0:(245.40031,1225.2307)
:Sending Touch (ACTION_DOWN): 0:(49.0,79.0)
:Sending Touch (ACTION_UP): 0:(158.67802,0.0)
:Sending Touch (ACTION_DOWN): 0:(492.0,539.0)
:Sending Touch (ACTION_UP): 0:(605.5082,540.785)
:Sending Trackball (ACTION_MOVE): 0:(-2.0,-5.0)
:Sending Touch (ACTION_DOWN): 0:(543.0,573.0)
    //[calendar_time:2016-12-30 10:07:40.276  system_uptime:327927309]
    // Sending event #800
:Sending Touch (ACTION_UP): 0:(558.98114,561.69336)
:Sending Trackball (ACTION_MOVE): 0:(-4.0,0.0)
    // Allowing start of Intent { cmp=com.xdstock.app.andriod.client/.bz0120.view.impl.SC0120A00ViewImpl } in package com.xdstock.app.andriod.client
    // Allowing start of Intent { cmp=com.xdstock.app.andriod.client/.bz0115.view.impl.SC0115A01ViewImpl } in package com.xdstock.app.andriod.client
:Sending Trackball (ACTION_MOVE): 0:(-4.0,-1.0)
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Touch (ACTION_DOWN): 0:(337.0,1090.0)
:Sending Touch (ACTION_UP): 0:(351.35196,1095.9177)
:Sending Touch (ACTION_DOWN): 0:(308.0,895.0)
:Sending Touch (ACTION_UP): 0:(329.33948,882.9762)
:Switch: #Intent;action=android.intent.action.MAIN;category=android.intent.category.LAUNCHER;launchFlags=0x10200000;component=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl;end
    // Allowing start of Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.xdstock.app.andriod.client/.main.view.impl.MainViewImpl } in package com.xdstock.app.andriod.client
:Sending Touch (ACTION_DOWN): 0:(706.0,1137.0)
:Sending Touch (ACTION_UP): 0:(706.0887,1150.0319)
:Sending Touch (ACTION_DOWN): 0:(247.0,133.0)
:Sending Touch (ACTION_UP): 0:(233.58006,120.48628)
:Sending Touch (ACTION_DOWN): 0:(130.0,290.0)
:Sending Touch (ACTION_UP): 0:(122.81747,289.9176)
:Sending Touch (ACTION_DOWN): 0:(415.0,972.0)
:Sending Touch (ACTION_UP): 0:(410.91327,969.0616)
:Sending Touch (ACTION_DOWN): 0:(293.0,570.0)
:Sending Touch (ACTION_UP): 0:(311.4817,571.56934)
:Sending Touch (ACTION_DOWN): 0:(97.0,232.0)
:Sending Touch (ACTION_UP): 0:(70.9029,252.15994)
:Sending Touch (ACTION_DOWN): 0:(285.0,950.0)
:Sending Touch (ACTION_UP): 0:(338.1729,874.0263)
:Sending Touch (ACTION_DOWN): 0:(143.0,264.0)
:Sending Touch (ACTION_UP): 0:(138.88953,265.54086)
:Sending Touch (ACTION_DOWN): 0:(405.0,48.0)
:Sending Touch (ACTION_UP): 0:(403.01147,68.17992)
:Sending Trackball (ACTION_MOVE): 0:(-1.0,-5.0)
    //[calendar_time:2016-12-30 10:07:42.158  system_uptime:327929190]
    // Sending event #900
:Sending Touch (ACTION_DOWN): 0:(561.0,1106.0)
:Sending Touch (ACTION_UP): 0:(557.2444,1114.111)
:Sending Trackball (ACTION_MOVE): 0:(-2.0,1.0)
:Sending Touch (ACTION_DOWN): 0:(195.0,1041.0)
:Sending Touch (ACTION_UP): 0:(188.06357,1005.5311)
:Sending Trackball (ACTION_MOVE): 0:(1.0,2.0)
:Sending Touch (ACTION_DOWN): 0:(270.0,277.0)
:Sending Touch (ACTION_UP): 0:(172.09303,162.36142)
:Sending Touch (ACTION_DOWN): 0:(337.0,482.0)
:Sending Touch (ACTION_UP): 0:(357.15833,483.30054)
:Sending Trackball (ACTION_MOVE): 0:(2.0,-4.0)
:Sending Trackball (ACTION_UP): 0:(0.0,0.0)
:Sending Trackball (ACTION_MOVE): 0:(0.0,3.0)
:Sending Touch (ACTION_DOWN): 0:(635.0,927.0)
:Sending Touch (ACTION_UP): 0:(639.4323,914.7981)
:Sending Trackball (ACTION_MOVE): 0:(-3.0,-1.0)
:Sending Trackball (ACTION_MOVE): 0:(-5.0,3.0)
Events injected: 1000
:Sending rotation degree=0, persist=false
:Dropped: keys=0 pointers=0 trackballs=0 flips=0 rotations=0
## Network stats: elapsed time=8136ms (0ms mobile, 0ms wifi, 8136ms not connected)
// Monkey finished

补充

Monkey测试 参数说明: <a href='http://ihongqiqu.com/2015/12/24/Android-Monkey-Test/' target='__blank'>http://ihongqiqu.com/2015/12/24/Android-Monkey-Test/</a>

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 213,417评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,921评论 3 387
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 158,850评论 0 349
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,945评论 1 285
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,069评论 6 385
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,188评论 1 291
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,239评论 3 412
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,994评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,409评论 1 304
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,735评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,898评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,578评论 4 336
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,205评论 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,916评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,156评论 1 267
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,722评论 2 363
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,781评论 2 351

推荐阅读更多精彩内容