Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs
博士 === 元智大學 === 資訊工程學系 === 102 === The Programmable Logic Controller (PLC) is being integrated into the automation and control of computer systems in safety-critical domains at an increasing rate. Adequately testing ensures safety of such systems; thus, testing adequacy (i.e., test coverage) becomes...
Main Authors: | , |
---|---|
Other Authors: | |
Format: | Others |
Language: | en_US |
Online Access: | http://ndltd.ncl.edu.tw/handle/41190232176272451247 |
id |
ndltd-TW-102YZU05392031 |
---|---|
record_format |
oai_dc |
spelling |
ndltd-TW-102YZU053920312016-03-11T04:13:30Z http://ndltd.ncl.edu.tw/handle/41190232176272451247 Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs 資料流程式結構測試涵蓋率準則之制定及應用 Yi-Chen Wu 吳宜真 博士 元智大學 資訊工程學系 102 The Programmable Logic Controller (PLC) is being integrated into the automation and control of computer systems in safety-critical domains at an increasing rate. Adequately testing ensures safety of such systems; thus, testing adequacy (i.e., test coverage) becomes an important research issue. Function Block Diagram (FBD) is a popular data-flow programming language for PLC and it is increasingly used in safety-critical applications. Current practice often involves translating an FBD program into an equivalent C program for testing. However, it cannot directly test a data-flow program, such as an FBD program, at the graphic (model) level. Furthermore, there are no commonly accepted structural test coverage criteria for data-flow programs. Therefore, this study first develops a new structural test coverage criterion, FB-Path Complete Condition Test Coverage (FPCC), for testing model-level FBD programs. The proposed testing scheme defines a complete test set for each function and function block in an FBD program. Moreover, this method augments the data-flow path concept with a sensitivity check to avoid fault masking and effectively detect logical function mutation errors. In addition, the study designs an automatic test case generator, FPCCTestGen, for FPCC so as to enhance the practicability and acceptance of the FPCC approach. First, a supporting infrastructure for performing automatic FBD-to-UPPAAL-for-FPCC transformation is designed. Then, each input FBD, represented in PLCopen XML format, will be parsed and converted into corresponding UPPAAL model components. After that, queries related to FPCC characteristics are submitted to UPPAAL model checker for verification. Preliminary experiments show that this test coverage criterion is comprehensive and effective for error detection, and the generated test suite achieves the highest FPCC percentage with a near optimal number of test cases. This study further presents a general FBD-to-UPPAAL transformation scheme, Function Block Model checking (FBM), by FPCCTestGen, so that model checking can be included in FBD verification process. Test cases based on a given test coverage criterion, such as decision coverage or condition coverage, can then be produced using a model checker. The empirical case study results show that the proposed FBD-to-UPPAAL transformation is valid and the incorporated model checking is beneficial. The methods and tools developed in this study can enhance the effectiveness of testing and verification of data-flow programs. Chin-Feng Fan 范金鳳 學位論文 ; thesis 82 en_US |
collection |
NDLTD |
language |
en_US |
format |
Others
|
sources |
NDLTD |
description |
博士 === 元智大學 === 資訊工程學系 === 102 === The Programmable Logic Controller (PLC) is being integrated into the automation and control of computer systems in safety-critical domains at an increasing rate. Adequately testing ensures safety of such systems; thus, testing adequacy (i.e., test coverage) becomes an important research issue. Function Block Diagram (FBD) is a popular data-flow programming language for PLC and it is increasingly used in safety-critical applications. Current practice often involves translating an FBD program into an equivalent C program for testing. However, it cannot directly test a data-flow program, such as an FBD program, at the graphic (model) level. Furthermore, there are no commonly accepted structural test coverage criteria for data-flow programs. Therefore, this study first develops a new structural test coverage criterion, FB-Path Complete Condition Test Coverage (FPCC), for testing model-level FBD programs. The proposed testing scheme defines a complete test set for each function and function block in an FBD program. Moreover, this method augments the data-flow path concept with a sensitivity check to avoid fault masking and effectively detect logical function mutation errors.
In addition, the study designs an automatic test case generator, FPCCTestGen, for FPCC so as to enhance the practicability and acceptance of the FPCC approach. First, a supporting infrastructure for performing automatic FBD-to-UPPAAL-for-FPCC transformation is designed. Then, each input FBD, represented in PLCopen XML format, will be parsed and converted into corresponding UPPAAL model components. After that, queries related to FPCC characteristics are submitted to UPPAAL model checker for verification. Preliminary experiments show that this test coverage criterion is comprehensive and effective for error detection, and the generated test suite achieves the highest FPCC percentage with a near optimal number of test cases.
This study further presents a general FBD-to-UPPAAL transformation scheme, Function Block Model checking (FBM), by FPCCTestGen, so that model checking can be included in FBD verification process. Test cases based on a given test coverage criterion, such as decision coverage or condition coverage, can then be produced using a model checker. The empirical case study results show that the proposed FBD-to-UPPAAL transformation is valid and the incorporated model checking is beneficial.
The methods and tools developed in this study can enhance the effectiveness of testing and verification of data-flow programs.
|
author2 |
Chin-Feng Fan |
author_facet |
Chin-Feng Fan Yi-Chen Wu 吳宜真 |
author |
Yi-Chen Wu 吳宜真 |
spellingShingle |
Yi-Chen Wu 吳宜真 Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
author_sort |
Yi-Chen Wu |
title |
Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
title_short |
Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
title_full |
Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
title_fullStr |
Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
title_full_unstemmed |
Defining and Application of a Test Coverage Criterion for Structural Testing of Data-Flow Programs |
title_sort |
defining and application of a test coverage criterion for structural testing of data-flow programs |
url |
http://ndltd.ncl.edu.tw/handle/41190232176272451247 |
work_keys_str_mv |
AT yichenwu definingandapplicationofatestcoveragecriterionforstructuraltestingofdataflowprograms AT wúyízhēn definingandapplicationofatestcoveragecriterionforstructuraltestingofdataflowprograms AT yichenwu zīliàoliúchéngshìjiégòucèshìhángàilǜzhǔnzézhīzhìdìngjíyīngyòng AT wúyízhēn zīliàoliúchéngshìjiégòucèshìhángàilǜzhǔnzézhīzhìdìngjíyīngyòng |
_version_ |
1718203692138627072 |