Font Size: a A A

Research On Component & Temporal Testing For Embedded Software Based On Interface Semantic Automata

Posted on:2017-07-08Degree:DoctorType:Dissertation
Country:ChinaCandidate:B WangFull Text:PDF
GTID:1318330566955862Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
Embedded systems have been widely used in many fields such as aviation,aerospace,industrial control,civil electronics and so on.With the growing scale and complexity of embedded software,Component-based technology gains increasing attentions in embedded software design and development,which introduces new quality concerns including the stability of components and their compositions,temporal correctness,and runtime robustness.Following the Model-Based Testing(MBT)approach,the thesis proposes a composable interface model for embedded software,and the methods for automatic testing and verification based on the interface model.The methods and algorithms facilitate systematic automatic testing,which enhance the quality,effectiveness,and efficiency of test generation.The thesis proposes an Interface Semantic Automata(ISA)for embedded software,and the syntax and semantic are extended for modeling of behavior and temporal properties.ISA defines parameters of interface operations,internal variables,and constraints using predicates in first-order logic,which are used for components composability analysis and integration testing.ISA also defines time variables,reset actions,and timing constraints,which can be used to describe the timing requirements quantitatively for temporal testing.Based on ISA,symbolic execution algorithms are designed for traversing the model and generating test cases.Metrices are defined for ISA structural and data coverage.Dynamic symbolic execution is used to search and generate valid event/behavior sequences to construct the suit of test path,and test datas are generated using constraint solving based on correlation analysis along specific test path.For robustness testing,abnormal inputs are generated using constraint inversion,stubbing and counterexample,to verify exception handling mechisms.Then an integrated test method is proposed according to the component integration path.A partition test method is proposed based on correlation analysis of timing constraints.The correlations of timing constraints are analyzed,and value dependencies between corresponding time variables are extracted.Base on that,input domains of time variables are divided into equivalent partions for specific independent or related timing constraints,and temporal datas are sampled on them for temporal testing.In addition to testing,temporal behaviors are also verified by analyzing execution traces to find runtime defects that are hard to be detected in simulation environment.Execution traces are logged and tagged with time properties,and checked against ISA model of their conformance to ISA specified timing requirments.The proposed methods are applied on component and integrated testing of a RTP(Real Time Protocol)software of high-speed railway communication network and temporal testing of a SPT(Satellite Positioning Terminal)software.The results show that the proposed methods can effectively find various functional,integration,and temporal defects,which enhance the quality of embedded software testing.
Keywords/Search Tags:Embedded Software, Interface Semantic Automata, Component Testing, Temporal Testing
PDF Full Text Request
Related items