一句话:提出 TERMINATOR,用于改进自动化 UI 测试用例的优先级排序,以降低持续集成中的测试成本。
自动化 UI 测试是软件开发持续集成过程中的重要组成部分。现代 Web UI 通常由多个团队编写的数十个微服务所返回的报告聚合而成;若某页面依赖的任一微服务失败,则打开该页面的查询也会失败。因此,UI 元素难以被孤立测试,导致自动化 UI 测试的整体成本很高。以 LexisNexis 为例,完整的自动化 UI 测试套件大约需要 30 小时执行,在云端也需要 3 至 5 小时,明显拖慢持续集成流程。论文标题表明其工作为 TERMINATOR,旨在更好地进行自动化 UI 测试用例优先级排序;但所给摘要主要描述问题背景与高昂成本,未展开具体方法、算法及评估结果。
Automated UI testing is an important component of the continuous integration process of software development. A modern web-based UI is an amalgam of reports from dozens of microservices written by multiple teams. Queries on a page that opens up another will fail if any of that page's microservices fails. As a result, the overall cost for automated UI testing is high since the UI elements cannot be tested in isolation. For example, the entire automated UI testing suite at LexisNexis takes around 30 hours (3-5 hours on the cloud) to execute, which slows down the continuous integration process.
@inproceedings{paperbot5090,
title = {TERMINATOR: better automated UI test case prioritization},
author = {Zhe Yu and Fahmid Fahid and Tim Menzies and Gregg Rothermel and Kyle Patrick and Snehit Cherian},
booktitle = {FSE},
year = {2019},
doi = {10.1145/3338906.3340448}
}