1 / 22

DSL Composition for Model-Based Test Generation

DSL Composition for Model-Based Test Generation. (or Adding Testability to a DSL by using DSL Composition). Levi Lúcio, Didier Buchs. Bruno Barroca, Vasco Amaral and Luís Pedro. Merge of SATEL and HALL. What is SATEL?. Template language for test generation Depends on the

harken
Download Presentation

DSL Composition for Model-Based Test Generation

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. DSL Composition for Model-Based Test Generation (or Adding Testability to a DSL by using DSL Composition) Levi Lúcio, Didier Buchs Bruno Barroca, Vasco Amaral and Luís Pedro

  2. Merge of SATEL and HALL

  3. What is SATEL? • Template language for test generation • Depends on the • Syntax of the target DSL: input and output types of the target DSL and data type signatures • Semantics of the target DSL: step and type semantics of the target DSL

  4. Semantics of the Merged Language ⊨ HALL model Instantiated Test Intention ? <tick> <mark with time(1)>, true <tick> <tick> <mark with time(2)>, true … Valid tests for TestMark <tick> <mark with time(2)>, false <tick> <tick> <mark with time(1)>, false … Invalid tests for TestMark

  5. Starting point: merge of SATEL and HALL in Prolog

  6. Motivation We merged, using Prolog, a test specification language and a DSL to add testability to that DSL. Can we formalize that merge in terms of language composition? Can we use the formalization to add testability to any DSL?

  7. Road Map • Starting point: merge of SATEL and HALL in Prolog • CoPsy: a DSL composition framework • SATEL + HALL composition formalization • Extrapolation of the approach • Conclusions and future work

  8. CoPsy: Syntactic Composition parametric metamodel effective parameter metamodel Φ={(Bfp,Cep)}

  9. CoPsy: Semantic Composition Syntactic Composition Ψ={(tr2fp,tr2ep)}

  10. Road Map • Starting point: merge of SATEL and HALL in Prolog • CoPsy: a DSL composition framework • SATEL + HALL composition formalization • Extrapolation of the approach • Conclusions and future work

  11. Composition Map Syntactic Composition

  12. Syntactic Composition Φ= {(a,j), (b,i), (c,k), (d,l), (e,m), (g,n), (f,g)} • Input and Output signatures • Abstract syntax of operational part of the target DSL • Abstract syntax of the data types of the target DSL

  13. Composition Map Inference Rules For Building Semantics

  14. Inference Rules for Building Semantics

  15. Inference Rule Example (acc< 6), t in TickIntention => t . <mark with time(acc)> in TestMark; HALLTypes ValidTests Intentions HALLInit HALLStepSemantics

  16. Composition Map Transformation Composition

  17. Transformation Composition (partial) Ψ= {(tr4fp,tr4ep), (tr5fp,tr5ep), (tr6fp,tr6ep), (tr7fp,tr7ep)}

  18. Road Map • Starting point: merge of SATEL and HALL in Prolog • CoPsy: a DSL composition framework • SATEL + HALL composition formalization • Extrapolation of the approach • Conclusions and future work

  19. Extrapolation of the approach • Using CoPsy, we need to identify, in the target DSL, the abstract syntax for: • Inputs/outputs • Operational behaviour specification • Data types specification • And the transformation rules to generate the inference rules to compute for the target DSL: • The step semantics • The semantics of types

  20. Conclusions / Future Work • Can we formalize a SATEL + HALL merge in terms of language composition? Yes!

  21. Conclusions / Future Work • Can we use that formalization to add testability to any DSL? • We are now implementing the composition approach; • In order to validate the extrapolation we will apply it to another DSL (APN).

  22. Questions?

More Related