一句话:通过监控 CPS 环境与物理状态识别稳定状态,提升 delta debugging 缩减失败诱导测试输入的效率。
电梯系统是一类信息物理系统(CPS),其测试用例通常复杂且时长很长,例如测试电梯调度算法时往往采用一整天乘客流动的仿真场景。当需要复现失败时,向开发者提供最小的失败诱导测试输入可以显著降低根因定位的难度。Delta debugging 已被证明是缩减失败诱导测试输入的有效技术。本文对该技术进行增强:首先在 CPS 仿真运行过程中监控其所处环境以及物理状态;然后基于监控信息搜索 CPS 执行期间出现的稳定状态;最后利用这些识别出的稳定状态辅助 delta debugging 算法,使其更高效地隔离失败诱导测试输入。论文以经验报告的形式,将方法应用于电梯调度算法这一工业 CPS 场景,说明监控环境与物理状态、利用稳定状态可提升测试输入缩减的效率。
Elevator systems are one kind of Cyber-Physical Systems (CPSs), and as such, test cases are usually complex and long in time. This is mainly because realistic test scenarios are employed (e.g., for testing elevator dispatching algorithms, typically a full day of passengers traveling through a system of elevators is used). However, in such a context, when needing to reproduce a failure, it is of high benefit to provide the minimal test input to the software developers. This way, analyzing and trying to localize the root-cause of the failure is easier and more agile. Delta debugging has been found to be an efficient technique to reduce failure-inducing test inputs. In this paper, we enhance this technique by first monitoring the environment at which the CPS operates as well as its physical states. With the monitored information, we search for stable states of the CPS during the execution of the simulation. In a second step, we use such identified stable states to help the delta debugging algorithm isolate the failure-inducing test inputs more efficiently.
@inproceedings{paperbot8047,
title = {Applying and Extending the Delta Debugging Algorithm for Elevator Dispatching Algorithms (Experience Paper)},
author = {Pablo Valle and Aitor Arrieta and Maite Arratibel},
booktitle = {ISSTA},
year = {2023},
doi = {10.1145/3597926.3598117}
}