Data Flow Testing for PLC Programs via Dynamic Symbolic Execution

Weigang He, Xia Mao, Ting Su, Yanhong Huang, Jianqi Shi

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

1 Scopus citations

Abstract

Programmable logic controllers (PLCs) are broadly used in the safety-critical industrial field, which requires high reliability to avoid catastrophes. Data flow testing (DFT) focuses on data flow relationships in a program and has a stronger fault-detection ability than other control flow-based testing. However, there is no automated testing tool supporting DFT for PLC programs. Hence, we propose an automated data flow testing framework for PLC programs. Our DFT framework is based on dynamic symbolic execution (DSE). Considering the cyclic execution feature of PLC programs, our approach needs reachable states which can be provided by branch testing. Besides, our approach improves testing performance through a novel guided path search algorithm. Furthermore, we evaluate our approach on several programs to demonstrate that this approach is practical and effective.

Original languageEnglish
Title of host publicationProceedings - 2021 28th Asia-Pacific Software Engineering Conference, APSEC 2021
PublisherIEEE Computer Society
Pages152-160
Number of pages9
ISBN (Electronic)9781665437844
DOIs
StatePublished - 2021
Event28th Asia-Pacific Software Engineering Conference, APSEC 2021 - Virtual, Online, Taiwan, Province of China
Duration: 6 Dec 20219 Dec 2021

Publication series

NameProceedings - Asia-Pacific Software Engineering Conference, APSEC
Volume2021-December
ISSN (Print)1530-1362

Conference

Conference28th Asia-Pacific Software Engineering Conference, APSEC 2021
Country/TerritoryTaiwan, Province of China
CityVirtual, Online
Period6/12/219/12/21

Keywords

  • Data flow Testing
  • Dynamic symbolic execution
  • PLC

Fingerprint

Dive into the research topics of 'Data Flow Testing for PLC Programs via Dynamic Symbolic Execution'. Together they form a unique fingerprint.

Cite this