首页> 外文会议>IEEE/ACM International Workshop on Automation of Software Test >On the Effectiveness of Random Testing for Android: Or How I Learned to Stop Worrying and Love the Monkey
【24h】

On the Effectiveness of Random Testing for Android: Or How I Learned to Stop Worrying and Love the Monkey

机译:关于Android随机测试的有效性:或者我学会如何停止担心和爱猴子

获取原文

摘要

Random testing of Android apps is attractive due to ease-of-use and scalability, but its effectiveness could be questioned. Prior studies have shown that Monkey - a simple approach and tool for random testing of Android apps - is surprisingly effective, "beating" much more sophisticated tools by achieving higher coverage. We study how Monkey's parameters affect code coverage (at class, method, block, and line levels) and set out to answer several research questions centered around improving the effectiveness of Monkey-based random testing in Android, and how it compares with manual exploration. First, we show that random stress testing via Monkey is extremely efficient (85 seconds on average) and effective at crashing apps, including 15 widely-used apps that have millions (or even billions) of installs. Second, we vary Monkey's event distribution to change app behavior and measured the resulting coverage. We found that, except for isolated cases, altering Monkey's default event distribution is unlikely to lead to higher coverage. Third, we manually explore 62 apps and compare the resulting coverages; we found that coverage achieved via manual exploration is just 2-3% higher than that achieved via Monkey exploration. Finally, our analysis shows that coarse-grained coverage is highly indicative of fine-grained coverage, hence coarse-grained coverage (which imposes low collection overhead) hits a performance vs accuracy sweet spot.
机译:由于使用易用性和可扩展性,Android应用程序的随机测试具有吸引力,但其有效性可能受到质疑。事先研究表明,猴子 - Android应用程序随机测试的简单方法和工具 - 令人惊讶的是,通过实现更高的覆盖率,“击败”更复杂的工具。我们研究猴子的参数如何影响代码覆盖率(在课堂,方法,块和线路级别)并开始回答若干研究问题,以提高基于猴子的随机测试在Android中的有效性,以及它如何与手动探索进行比较。首先,我们表明,通过猴子的随机压力测试非常有效(平均85秒),并在崩溃的应用中有效,其中包括具有数百万(甚至数十亿)的安装的15个广泛使用的应用程序。其次,我们改变猴子的事件分发来改变应用行为并测量结果覆盖范围。我们发现,除了孤立的案例外,改变猴子的默认事件分配不太可能导致更高的覆盖范围。第三,我们手动探索62个应用程序并比较所产生的覆盖范围;我们发现,通过手动探索实现的覆盖率比通过猴子探索实现的2-3%。最后,我们的分析表明,粗粒覆盖率高度指示细粒覆盖率,因此粗粒覆盖率(其施加低收集架空)击中性能与精度甜蜜点。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号