论文标题

CAT:以变化为中心的Android GUI测试

CAT: Change-focused Android GUI Testing

论文作者

Peng, Chao, Rajan, Ajitha

论文摘要

每隔几周就经常更新Android应用程序,以跟上不断变化的用户,硬件和业务需求。通过广泛的测试检查应用程序更新的正确性。最近的研究提出了用于Android应用程序中自动GUI活动生成的工具。但是,由于生成的GUI事件没有确定更新的优先级,而是探索其他应用程序行为,因此这些技术在检查应用程序更新方面并不有效。 我们在本文中使用CAT(以变化为中心的Android GUI测试)来满足这一需求。对于应用程序更新,在源代码或GUI级别上,CAT执行更改影响分析,以识别受更新影响的GUI元素。然后,CAT生成长度-3 GUI事件序列,以与这些GUI元素相互作用。我们使用21种公开开源Android应用程序的经验评估表明,CAT能够自动识别受应用程序更新影响,生成和执行长度3 GUI事件序列的GUI元素,该序列着重于变更受影响的GUI元素。与两种流行的GUI事件生成工具(Droidbot和Droidmate)进行了比较,表明CAT在与受变更影响的GUI元素相互作用方面更有效。最后,CAT能够在两个应用程序中检测到以前未知的变更相关的错误。

Android Apps are frequently updated, every couple of weeks, to keep up with changing user, hardware and business demands. Correctness of App updates is checked through extensive testing. Recent research has proposed tools for automated GUI event generation in Android Apps. These techniques, however, are not efficient at checking App updates as the generated GUI events do not prioritise updates, and instead explore other App behaviours. We address this need in this paper with CAT (Change-focused Android GUI Testing). For App updates, at the source code or GUI level, CAT performs change impact analysis to identify GUI elements affected by the update. CAT then generates length-3 GUI event sequences to interact with these GUI elements. Our empirical evaluations using 21 publicly available open source Android Apps demonstrated that CAT is able to automatically identify GUI elements affected by App updates, generate and execute length-3 GUI event sequences focusing on change-affected GUI elements. Comparison with two popular GUI event generation tools, DroidBot and DroidMate, revealed that CAT was more effective at interacting with the change-affected GUI elements. Finally, CAT was able to detect previously unknown change-related bugs in two Apps.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源