一句话:首个面向 iOS 应用的基于模型 UI 测试框架,融合增强静态分析与运行时上下文,并以潜在价值感知搜索引导测试。
UI 测试是保障应用质量的重要手段,但已有研究几乎集中在 Android 平台,iOS 上的 UI 测试仍是空白。本文提出 CydiOS,一种面向 iOS 应用的基于模型测试方法:它增强现有静态分析,为被测应用构建更完整的静态模型;同时提出获取运行时信息的方法,得到可映射到模型中的实时应用上下文;并设计潜在价值感知(potential-aware)搜索算法来引导测试执行,以提升 UI 测试的有效性。作者在 App Store 的 50 个热门应用上将 CydiOS 与 random、depth-first、stoat、ape 四种代表性算法进行比较,结果显示 CydiOS 在代码覆盖率与屏幕覆盖率上均优于其他工具,且实现已开源。
To make an app stand out in an increasingly competitive market, developers must ensure its quality to deliver a better user experience. UI testing is a popular technique for quality assurance, which can thoroughly test the app from the users’ perspective. However, while considerable research has already studied UI testing on the Android platform, there is no research on iOS. This paper introduces CydiOS, a novel approach to performing model-based testing for iOS apps. CydiOS enhances the existing static analysis to build a more complete static model for the app under test. We propose an approach to retrieve runtime information to obtain real-time app context that can be mapped in the model. To improve the effectiveness of UI testing, we also introduce a potential-aware search algorithm to guide testing execution. We compare CydiOS with four representative algorithms(i.e., random, depth-first, stoat, and ape). We have evaluated CydiOS on 50 popular apps from App Store, and the results show that CydiOS outperforms other tools, achieving both higher code coverage and screen coverage. We open source CydiOS at https://github.com/SoftWare2022Testing/CydiOS, and a demo video can be found there.
@inproceedings{paperbot8048,
title = {CydiOS: A Model-Based Testing Framework for iOS Apps},
author = {Shuohan Wu and Jianfeng Li and Hao Zhou and Yongsheng Fang and Kaifa Zhao and Haoyu Wang and Chenxiong Qian and Xiapu Luo},
booktitle = {ISSTA},
year = {2023},
doi = {10.1145/3597926.3598033}
}