论文
LDMDroid:利用 LLM 检测 Android 应用程序中的数据操作错误
LDMDroid: Leveraging LLMs for Detecting Data Manipulation Errors in Android Apps
摘要
Android 应用程序严重依赖数据操作功能 (DMF) 通过 CRUDS 操作处理应用程序特定的数据,因此其正确性对于可靠性至关重要。然而,检测数据操作错误 (DME) 具有挑战性,因为它们依赖于特定的 UI 交互序列和逻辑错误的表现。现有的自动化 UI 测试工具面临两个主要挑战:UI 路径覆盖范围不足以触发足够的 DMF,以及依赖手动编写的测试脚本。为了解决这些问题,我们提出了一种使用 大语言模型 (LLM) 进行 DME 检测的自动化方法。我们开发了 LDMDroid,一个适用于 Android 应用程序的自动化 UI 测试框架。 LDMDroid 通过引导 LLM 通过状态感知流程来生成 UI 事件序列,从而提高 DMF 触发的成功率。它还使用视觉功能来识别数据状态的变化,从而提高 DME 验证准确性。我们在 24 个真实 Android 应用程序上评估了 LDMDroid,结果表明与基线相比 DMF 触发成功率有所提高。 LDMDroid 发现了 17 个独特的错误,其中 14 个已得到开发人员确认,11 个已修复。该工具可在 https://github.com/runnnnnner200/LDMDroid 上公开获取。