A Test Framework for Executing Model-Based Testing in Embedded Systems
Model Driven Development (MDD) and Model Based Testing (MBT) are gaining inroads individually for their application in embedded software engineering projects. However, their full-edged and integrated usage in real-life embedded software engineering projects (e.g. industrially relevant examples) and...
Main Author: | |
---|---|
Other Authors: | |
Format: | Doctoral Thesis |
Language: | English |
Published: |
2012
|
Subjects: | |
Online Access: | https://repositorium.ub.uni-osnabrueck.de/handle/urn:nbn:de:gbv:700-2012092510320 |
id |
ndltd-uni-osnabrueck.de-oai-repositorium.ub.uni-osnabrueck.de-urn-nbn-de-gbv-700-2012092510320 |
---|---|
record_format |
oai_dc |
collection |
NDLTD |
language |
English |
format |
Doctoral Thesis |
sources |
NDLTD |
topic |
Embedded Software Engineering Model-Based Testing Test Framework Unified Modeling Language (UML) UML Testing Profile (UTP) ddc:000 |
spellingShingle |
Embedded Software Engineering Model-Based Testing Test Framework Unified Modeling Language (UML) UML Testing Profile (UTP) ddc:000 Iyenghar, Padma A Test Framework for Executing Model-Based Testing in Embedded Systems |
description |
Model Driven Development (MDD) and Model Based Testing (MBT) are gaining inroads individually for their application in embedded software engineering projects. However, their full-edged and integrated usage in real-life embedded software engineering projects (e.g. industrially relevant examples) and executing MBT in resource constrained embedded systems (e.g. 16 bit system/64 KiByte memory) are emerging fields.
Addressing the aforementioned gaps, this thesis proposes an integrated model-based approach and test framework for executing the model-based test cases, with minimal overhead, in embedded systems. Given a chosen System Under Test (SUT) and the system design model, a test framework generation algorithm generates the necessary artifacts (i.e., the test framework) for executing the model-based test cases. The main goal of the test framework is to enable test automation and test case execution at the host computer (which executes the test harness), thereby only the test input data is executed at the target. Significant overhead involved in interpreting the test data at the target is eliminated, as the test framework makes use of a target debugger (communication and decoding agent) on the host and a target monitor (software-based runtime monitoring routine) in the embedded system. In the prototype implementation of the proposed approach, corresponding (standardized) languages such as the Unified Modeling Language (UML) and the UML Testing Profile (UTP) are used for the MDD and MBT phases respectively. The applicability of the proposed approach is demonstrated using an experimental evaluation (of the prototype) in real-life examples.
The empirical results indicate that the total time spent for executing the test cases in the target (runtime-time complexity), comprises of only the time spent to decode the test input data by the target monitor and execute it in the embedded system. Similarly, the only memory requirement in the target for executing the model-based test cases in the target is that of the software-based target monitor. A quantitative comparison on the percentage change in the memory overhead (runtime-memory complexity) for the existing approach and the proposed approach indicates that the existing approach (e.g. in a MDD/MBT tool-Rhapsody), introduces approximately 150% to 350% increase in memory overhead for executing the test cases. On the other hand, in the proposed approach, the target monitor is independent of the number of test cases to be executed and their complexity. Hence, the percentage change in the memory overhead for the proposed approach shows a declining trend w.r.t the increasing code-size for equivalent application scenarios (approximately 17% to 2%).
Thus, the proposed test automation approach provides the essential benefit of executing model- based tests, without downloading the test harness in the target. It is demonstrated that it is feasible to execute the test cases specified at higher abstraction levels (e.g. using UML sequence diagrams) in resource constrained embedded systems and how this may be realized using the proposed approach. Further, as the proposed runtime monitoring mechanism is time and memory-aware, the overhead parameters can be accommodated in the earlier phases of the embedded software development cycle (if necessary) and the target monitor can be included in the final production code. The aforementioned advantages highlight the scalability, applicability, reliability and superiority of the proposed approach over the existing methodologies for executing the model-based test cases in embedded systems. |
author2 |
Prof. Dr. Elke Pulvermüller |
author_facet |
Prof. Dr. Elke Pulvermüller Iyenghar, Padma |
author |
Iyenghar, Padma |
author_sort |
Iyenghar, Padma |
title |
A Test Framework for Executing Model-Based Testing in Embedded Systems |
title_short |
A Test Framework for Executing Model-Based Testing in Embedded Systems |
title_full |
A Test Framework for Executing Model-Based Testing in Embedded Systems |
title_fullStr |
A Test Framework for Executing Model-Based Testing in Embedded Systems |
title_full_unstemmed |
A Test Framework for Executing Model-Based Testing in Embedded Systems |
title_sort |
test framework for executing model-based testing in embedded systems |
publishDate |
2012 |
url |
https://repositorium.ub.uni-osnabrueck.de/handle/urn:nbn:de:gbv:700-2012092510320 |
work_keys_str_mv |
AT iyengharpadma atestframeworkforexecutingmodelbasedtestinginembeddedsystems AT iyengharpadma testframeworkforexecutingmodelbasedtestinginembeddedsystems |
_version_ |
1719354398416568320 |
spelling |
ndltd-uni-osnabrueck.de-oai-repositorium.ub.uni-osnabrueck.de-urn-nbn-de-gbv-700-20120925103202020-10-28T17:22:53Z A Test Framework for Executing Model-Based Testing in Embedded Systems Iyenghar, Padma Prof. Dr. Elke Pulvermüller Prof. Dr. Clemens Westerkamp Embedded Software Engineering Model-Based Testing Test Framework Unified Modeling Language (UML) UML Testing Profile (UTP) ddc:000 Model Driven Development (MDD) and Model Based Testing (MBT) are gaining inroads individually for their application in embedded software engineering projects. However, their full-edged and integrated usage in real-life embedded software engineering projects (e.g. industrially relevant examples) and executing MBT in resource constrained embedded systems (e.g. 16 bit system/64 KiByte memory) are emerging fields. Addressing the aforementioned gaps, this thesis proposes an integrated model-based approach and test framework for executing the model-based test cases, with minimal overhead, in embedded systems. Given a chosen System Under Test (SUT) and the system design model, a test framework generation algorithm generates the necessary artifacts (i.e., the test framework) for executing the model-based test cases. The main goal of the test framework is to enable test automation and test case execution at the host computer (which executes the test harness), thereby only the test input data is executed at the target. Significant overhead involved in interpreting the test data at the target is eliminated, as the test framework makes use of a target debugger (communication and decoding agent) on the host and a target monitor (software-based runtime monitoring routine) in the embedded system. In the prototype implementation of the proposed approach, corresponding (standardized) languages such as the Unified Modeling Language (UML) and the UML Testing Profile (UTP) are used for the MDD and MBT phases respectively. The applicability of the proposed approach is demonstrated using an experimental evaluation (of the prototype) in real-life examples. The empirical results indicate that the total time spent for executing the test cases in the target (runtime-time complexity), comprises of only the time spent to decode the test input data by the target monitor and execute it in the embedded system. Similarly, the only memory requirement in the target for executing the model-based test cases in the target is that of the software-based target monitor. A quantitative comparison on the percentage change in the memory overhead (runtime-memory complexity) for the existing approach and the proposed approach indicates that the existing approach (e.g. in a MDD/MBT tool-Rhapsody), introduces approximately 150% to 350% increase in memory overhead for executing the test cases. On the other hand, in the proposed approach, the target monitor is independent of the number of test cases to be executed and their complexity. Hence, the percentage change in the memory overhead for the proposed approach shows a declining trend w.r.t the increasing code-size for equivalent application scenarios (approximately 17% to 2%). Thus, the proposed test automation approach provides the essential benefit of executing model- based tests, without downloading the test harness in the target. It is demonstrated that it is feasible to execute the test cases specified at higher abstraction levels (e.g. using UML sequence diagrams) in resource constrained embedded systems and how this may be realized using the proposed approach. Further, as the proposed runtime monitoring mechanism is time and memory-aware, the overhead parameters can be accommodated in the earlier phases of the embedded software development cycle (if necessary) and the target monitor can be included in the final production code. The aforementioned advantages highlight the scalability, applicability, reliability and superiority of the proposed approach over the existing methodologies for executing the model-based test cases in embedded systems. 2012-09-25 doc-type:doctoralThesis https://repositorium.ub.uni-osnabrueck.de/handle/urn:nbn:de:gbv:700-2012092510320 eng http://rightsstatements.org/vocab/InC/1.0/ application/pdf application/zip |