1 / 28

Automated Model Driven Software Testing

Automated Model Driven Software Testing. Rational Users Conference Tel Aviv June 7 2004 Alan Hartman IBM Israel – Haifa Research Laboratory. Agenda. AGEDIS Project Overview Architecture Methodology Interfaces Tools Future Plans. AGEDIS Overview.

athrower
Download Presentation

Automated Model Driven Software Testing

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. Automated Model Driven Software Testing Rational Users Conference Tel Aviv June 7 2004 Alan Hartman IBM Israel – Haifa Research Laboratory

  2. Agenda • AGEDIS Project Overview • Architecture • Methodology • Interfaces • Tools • Future Plans

  3. AGEDIS Overview • Automated model-based test Generation and Execution for DIStributed systems • Methodology and tools for model-based testing • Open interfaces • Mixture of academic and industrial partners • Three phase timetable of experiment and development • November 2001- February 2004 • Partially funded by the European Commission

  4. Consortium Partners • IBM Haifa Research Lab • Oxford University • VERIMAG/IRISA • Imbus • France Telecom • IBM UK • Intrasoft International

  5. Methodology & Architecture • UML based component testing • Compliant with RUP • High degree of automation • No silver bullet

  6. Automated Testing Methodology

  7. Simulator Model Compiler Intermediate Format Generator Generation Directives Abstract Test Suite Analyzers Visualizer Editor Suite Execution Trace Execution Automated Testing Architecture GUI & Productivity Aids Execution Directives

  8. Benefits • Starting from specification • Involves testers early in the development process • Teams testers with developers • Forces testability into product design • Building behavioural model and test interface • Finds design and specification bugs - before code exists • The model is the test plan - and is easily maintained • Automated test suite generation • Coverage is guaranteed - increases testing thoroughness • Matches coverage goals to testing budget • Zero test suite maintenance costs • Automated test suite execution • Finds code and interface bugs • Includes a framework for the testing of distributed applications • Reduces test execution costs

  9. UML IF TGD ATS SET Interfaces • UML Profile for AGEDIS • Test Generation Directives • Test Execution Directives • IF Model Execution Interface • Abstract Test Suite • Suite Execution Trace TED

  10. User Modeling Interface • The AGEDIS Modeling Language is a profile for UML 1.4: • UML Class diagrams - structure • UML Object diagrams - snapshots • UML State diagrams – behaviour & test purposes • Annotated with an action language – IF

  11. Test Generation Directives • Test Purposes – stereotyped system level state diagrams • Coverage Directives – stereotyped system level state diagrams • Coverage without tears – 4 levels – parameters to the test generation algorithm

  12. Test Execution Directives • XML Schema • Model translation from model abstractions to SUT concrete implementations • Test architecture • Host addresses • Delays, timeouts • Prologues, epilogues

  13. IF - Model Execution Interface • IF Encoding of the model • Classes • Objects • State machines

  14. Test Suite and Trace Interface • XML schema – for test execution and tracing • Model description • classes : constants, types, control & observable signatures • a special class is defined for the tester • object identities • Test Suite - set of test cases • Test Trace – record of executed test cases

  15. Test Case and Test Trace • Interaction graphs - between the tester and the SUT • Associated verdicts (Pass, Fail, Inconclusive) • Alternate paths for non-determinism in test cases • Expected results in test suite • Observed results and verdicts in trace

  16. Abstract Test Suite

  17. S C G FA VE EE Tools • User Interface • Modeler & Model Compiler • Model Simulator • Test Generator • Test Execution Engine • Test Suite/Trace Viewer/Editor • Feedback & Analysis • Bug Reporter • Report Generator UI & RG

  18. GUI

  19. ModelingTool & Compiler • Objecteering UML modeling tool • Tool profile to convert to XML • General purpose XML to IF compiler • Written in Java, with XMI in mind as a future input format

  20. Model Simulator

  21. Test Generator • Based on GOTCHA and TGV • GOTCHA • uses Murphi specification language • explicit traversal of state space • extensive coverage criteria • TGV • language independent simulator • focus on distributed applications • explicit test purposes as sequences of interactions

  22. Test Execution Engine • Input: Abstract Test Suite and Test Execution Directives • Output: Suite Execution Trace • Multiple platform (e.g. Linux, Windows) support • Multiple external interface (Java,C++,C) support • Test distribution + centralized logging • Interactive test case execution • GUI to view execution progress, inputs, and outputs

  23. I/O 1 1 on each host 1..N on each host Object Test SuiteDriver HostManager ProcessManager . . . Object N e t w o r k Execution Engine Architecture

  24. Feedback Tools • Coverage analysis • Detect uncovered areas of the model in either test suite or test trace • Create test purposes to reach them • Invokes a functional coverage tool from www.alphaworks.com • Defect analysis • Clustering of defects • Feature extraction from clusters • Create test purposes to reproduce the bug

  25. AGEDIS Future Plans

  26. Future Plans • Exploitation Activity • Available under license for non-commercial use • Available as a service • Incorporation in wider Model Driven SE Effort • Integrate methodology with RUP • Migrate to Eclipse, XDE • Focus on business integration domain

  27. ModelWare • New European Project • Model driven software engineering • Eclipse based tools for UML modeling, and the full MDA lifecycle • Model driven architecture • Platform independent and platform specific models • Model simulation • Model transformation

  28. A. Ramfos., S. Liapis, N. Giannelos, A. Hondouridakis, M. Sardis, K. Bechrakis, V. Akousi-Krivki K. Dussa-Zieger, J. Trost, B. Nossem, T. Linz, B. Mattern, J. Hofer, H. Raessler, T. Rossner, I. Craggs, I. Griffiths Y.-M. Quemener, D. Vincent, T. Heuillard, N. Moteau A.Bertolino, A. Wills, S. Reid K. Nagin, O. Edelstein, A. Kirshin, S. Olvovsky, M. Berg, L. Raskin, T. Shiran, C. Sacharen, M. Barshay, D. Neimer L. Mounier, M. Bozga, Y. Lakhnech T. Jeron, E. Demairy, V. Tschaen J. Davies, A. Cavarra, C. Crichton, J. Woodcock, M. Field Thanks to:

More Related