Presentation is loading. Please wait.

Presentation is loading. Please wait.

An Automated Test Generation Process from UML Models to TTCN-3

Similar presentations


Presentation on theme: "An Automated Test Generation Process from UML Models to TTCN-3"— Presentation transcript:

1 An Automated Test Generation Process from UML Models to TTCN-3
Jens R. Calamé

2 Our Test Generation Process
System Specification (e.g. UML) System Specification (formal) Abstraction Abstract System Specification Test Case Generation Test Purpose TGV Abstract Test Case TTCN-3 Generation Constraint Generation Parameterizable Test Case (TTCN-3) Rule System for Data Selection IFM 2005 (Doctoral Symposium), Eindhoven

3 IFM 2005 (Doctoral Symposium), Eindhoven
Abstraction Motivation: Test Generation with TGV is based on enumerative techniques  suffers from state-space explosion Finite state-space by data abstraction System abstraction on specification-level: Replace all input values by one constant chaos (*) Propagate this * through the system Transform conditions based on * to nondeterministic choice  Abstracted system is an over-approximation of original system IFM 2005 (Doctoral Symposium), Eindhoven

4 Generation of Data Selection Rules
Given: Abstract test case (control flow information + internal data) Original specification (data dependencies) Result: (generated Prolog implementation) Rules, representing ADT functions of the original specification (meta language) Rule system based on specification: one rule for each transition in original system, containing Conditions Assignments (internally or from input actions, resp.) Test oracle based on abstract test case (query to rule system) Invocation of all selected actions as a conjunction IFM 2005 (Doctoral Symposium), Eindhoven

5 IFM 2005 (Doctoral Symposium), Eindhoven
Test Execution Pre-solve one trace to pass statically (skip internal -steps) Execute this trace until the SUT leaves it Try to find a trace to pass  solve and execute it If no trace to pass: Try to find a trace to inconc  solve it If no trace to inconc: set test verdict fail !initPin(x00) !initBalance(x10) 1 2 !getPin(x20) ?pinInCorrect INCONC 3 ?pinCorrect ?lowBalance 4 !getAmount(x40) !getBalance PASS 7 5 ?Money(x70) ?Balance(x50) ?eatCard !getAmount(x60) 6 IFM 2005 (Doctoral Symposium), Eindhoven

6 Future Work (Theoretical Part)
Proof of completeness of the presented approach If there is a failure in the SUT – is there a test case that finds it? -steps handling not yet fully satisfying In blackbox testing: -steps are skipped However: for online constraint-solving -steps contain necessary information (e.g. internal assignments) Possible solution: assignment collection in first visible action after sequence of -steps (loops?) Theoretical foundation of suspension handling (quiescence, -loops again) IFM 2005 (Doctoral Symposium), Eindhoven

7 IFM 2005 (Doctoral Symposium), Eindhoven
Conclusion Actual status: Data abstraction algorithm is implemented for µCRL Parameterization constraint generation is implemented Whole test generation process is applied to CEPS (but: not yet test execution) Generation of TTCN-3 test cases ongoing work Future work: Correct handling of -steps in blackbox-testing Handling of suspension traces in the SUT Proof that a complete set of test cases is generated Test data selection and test case parameterization Formalization of UML-Models for test generation IFM 2005 (Doctoral Symposium), Eindhoven

8 IFM 2005 (Doctoral Symposium), Eindhoven
IFM 2005 (Doctoral Symposium), Eindhoven


Download ppt "An Automated Test Generation Process from UML Models to TTCN-3"

Similar presentations


Ads by Google