一句话:提出轻量级众包测试工具 LazyCow,可在真实 Android 设备上自主识别并验证 API 引发的兼容性问题。
Android 碎片化指设备与操作系统版本日益多样,导致开发者无法在所有支持设备上测试应用,进而产生大量设备兼容性问题并损害用户体验。已有自动检测技术只能发现特定类型(如 API 签名演化引起)的兼容性问题,而由真实设备上的定制 OS 版本和语义级 OS 修改导致的严重兼容性问题难以静态检测,仍属未知领域。为弥补这一空白并通过众包方式驯服 Android 碎片化,作者提出 LazyCow——一种新颖、轻量的众包测试工具。实验在真实 Android 设备上运行数千个测试用例,结果表明 LazyCow 能有效自主识别和验证 API 引发的兼容性问题。该工具的客户端与服务端源代码均在制品包中公开,并提供了演示视频。
Android fragmentation refers to the increasing variety of Android devices and operating system versions. Their number make it impossible to test an app on every supported device, resulting in many device compatibility issues and leading to poor user experiences. To mitigate this, a number of works that automatically detect compatibility issues have been proposed. However, current state-of-the-art techniques can only be used to detect specific types of compatibility issues (i.e., compatibility issues caused by API signature evolution), i.e., many other essential categories of compatibility issues are still unknown. For instance, customised OS versions on real devices and semantic OS modifications could result in severe compatibility issues that are difficult to detect statically. In order to address this research gap and facilitate the prospect of taming Android frag- mentation through crowdsourced efforts, we propose LazyCow, a novel, lightweight, crowdsourced testing tool. Our experimental results involving thousands of test cases on real Android devices demonstrate that LazyCow is effective at autonomously identifying and validating API-induced compatibility issues. The source code of both client side and server side are all made publicly available in our artifact package. A demo video of our tool is available at https://www.youtube.com/watch?v=_xzWv_mo5xQ.
@inproceedings{0002CLG023,
title = {LazyCow: A Lightweight Crowdsourced Testing Tool for Taming Android Fragmentation},
author = {Xiaoyu Sun and Xiao Chen and Yonghui Liu and John Grundy and Li Li},
booktitle = {FSE},
year = {2023},
doi = {10.1145/3611643.3613098}
}