An Empirical Study of Regression Testing for Android Apps in Continuous Integration Environment

An Empirical Study of Regression Testing for Android Apps in Continuous Integration Environment
复制标题

DOI:
10.1109/esem56168.2023.10304799
复制
发表时间:
2023-10
期刊:
2023 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM)
影响因子:
--
通讯作者:
Dingbang Wang;Yu Zhao;Lu Xiao;Tingting Yu
Dingbang Wang;Yu Zhao;Lu Xiao;Tingting Yu
中科院分区:
其他
文献类型:
--
作者:
Dingbang Wang;Yu Zhao;Lu Xiao;Tingting Yu

文献摘要

相似文献

持续集成(CI)已成为自动化代码更改、测试和软件项目交付的流行方法。然而,在代码提交之前进行充分的测试对于防止构建中断至关重要。此外,测试必须为开发人员提供关于代码更改的快速反馈,这需要快速的测试时间。虽然回归测试选择(RTS)已被研究用于提高低级别测试(即单元测试)的回归测试的成本效益,但它尚未被应用于移动应用程序等应用领域中的用户界面(UI)测试。UI级别的UI测试需要不同的技术,如影响分析和自动测试执行。在这篇文章中,我们研究了在各种开源移动应用程序的UI测试中,在CI设置中使用RTS。我们的分析重点是使用频率分析来了解RTS的需求,使用成本分析来评估影响分析和测试用例选择算法的成本,以及使用测试重用分析来确定用于自动化的UI测试序列的可重用性。这项研究的见解将指导从业者和研究人员开发先进的RTS技术,这些技术可以适应移动应用程序的CI环境。
Continuous integration (CI) has become a popular method for automating code changes, testing, and software project delivery. However, sufficient testing prior to code submission is crucial to prevent build breaks. Additionally, testing must provide developers with quick feedback on code changes, which requires fast testing times. While regression test selection (RTS) has been studied to improve the cost-effectiveness of regression testing for lower-level tests (i.e., unit tests), it has not been applied to the testing of user interfaces (UI) in application domains such as mobile apps. UI testing at the UI level requires different techniques such as impact analysis and automated test execution. In this paper, we examine the use of RTS in CI settings for UI testing across various open-source mobile apps. Our analysis focuses on using Frequency Analysis to understand the need for RTS, Cost Analysis to evaluate the cost of impact analysis and test case selection algorithms, and Test Reuse Analysis to determine the reusability of UI test sequences for automation. The insights from this study will guide practitioners and researchers in developing advanced RTS techniques that can be adapted to CI environments for mobile apps.