可参考美团技术团队
1. 背景
目前,移动App上的业务页面愈发复杂,技术团队常会以页面为单位来拆解团队开发分工,同一类业务元素信息分散在不同团队负责的页面内。在具体的实践中,存在一类不易检出但又影响用户体验的异常:页面中的UI信息相互矛盾(如下图中同一个商品在多个页面上的实际价格不一致)。此类UI内容不一致的异常,没有固定的出现位置和表现规律,长期以来主要依赖测试人员对于UI的熟悉度,主要靠手工测试执行时来随机进行发现。
图:界面间UI内容不一致举例(示意图)
美团App中的众多业务具备内容繁多的多种页面布局,以及多技术栈共存,如何低成本地在多类业务、多样化布局、多技术栈的UI页面间检测内容一致性,是终端测试领域中的一项重要挑战。
图:UI和API服务对应关系(以价格计算为例)
为解决该问题,美团到店研发平台质量工程部与复旦大学计算机学院周扬帆教授团队展开了大前端智能化测试领域的科研合作,在UI认知与校验方面积累了多项智能技术。在应用方面,我们选择从UI界面内容一致性校验入手,对多个页面状态信息的合理性与一致性进行自动化检查,并在美团App中的多类营销业务场景中进行落地。
在方法上,我们针对UI层面设计并实现了一套自动化智能检测流程,取名为AutoConsis,在UI内容一致性检测上做到了低成本、高泛化性、高置信度。该工作对于大前端UI的质量保障多个领域都具有可借鉴意义,并产出了一篇学术论文《AutoConsis: Automatic GUI-driven Data Inconsistency Detection of Mobile Apps》,该论文被软件工程领域具有国际影响力的会议ICSE 2024(CCF-A类会议)的Software In Practice Track(软件工程实践应用)收录。
2. 实现原理与项目实践
本文以特价商品营销业务为例,来介绍智能化UI内容一致性检测所需要的能力。特价商品营销是一种大型促销应用,与之相关的一致性测试涉及数百个城市,单个城市内的多个商品品类,每个商品的多个所涉及页面,其状态空间非常复杂。传统的自动化测试方法需要对各个状态逐一适配,成本极高。理想情况下