@inbook{0957bc162b444097b0b2b78a4c0bcae7,
title = "Towards Efficient Data-Flow Test Data Generation",
abstract = "Data-flow testing (DFT) aims to detect potential data interaction anomalies by focusing on the points at which variables receive values and the points at which these values are used. Such test objectives are referred as def-use pairs. However, the complexity of DFT still overwhelms the testers in practice. To tackle this problem, we introduce a hybrid testing framework for data-flow based test generation: (1) The core of our framework is symbolic execution (SE), enhanced by a novel guided path exploration strategy to improve testing performance; and (2) we systematically cast DFT as reachability checking in software model checking (SMC) to complement SE, yielding practical DFT that combines the two techniques{\textquoteright} strengths. We implemented our framework for C programs on top of the state-of-the-art symbolic execution engine KLEE and instantiated with three different software model checkers. Our evaluation on the 28,354 def-use pairs collected from 33 open-source and industrial program subjects shows that (1) our SE-based approach can improve DFT performance by 15–48\% in terms of testing time, compared with existing search strategies; and (2) our combined approach can further reduce testing time by 20.1–93.6\%, and improve data-flow coverage by 27.8–45.2\% by eliminating infeasible test objectives. This combined approach also enables the cross-checking of each component for reliable and robust testing results.",
keywords = "Data-flow Testing, Model Checking, Symbolic Execution",
author = "Ting Su and Chengyu Zhang and Yichen Yan and Lingling Fan and Yang Liu and Zhoulai Fu and Zhendong Su",
note = "Publisher Copyright: {\textcopyright} 2023, The Author(s), under exclusive license to Springer Nature Switzerland AG.",
year = "2023",
doi = "10.1007/978-3-031-40436-8\_10",
language = "英语",
series = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
publisher = "Springer Science and Business Media Deutschland GmbH",
pages = "257--293",
booktitle = "Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)",
address = "德国",
}