
Model-based interface framework : an extensible framework for automatic generation of test cases and wrappers Citation for published version (APA): Martinez Marquez, A. D. (2016). Model-based interface framework : an extensible framework for automatic generation of test cases and wrappers. Technische Universiteit Eindhoven. Document status and date: Published: 28/09/2016 Document Version: Publisher’s PDF, also known as Version of Record (includes final page, issue and volume numbers) Please check the document version of this publication: • A submitted manuscript is the version of the article upon submission and before peer-review. There can be important differences between the submitted version and the official published version of record. People interested in the research are advised to contact the author for the final version of the publication, or visit the DOI to the publisher's website. • The final author version and the galley proof are versions of the publication after peer review. • The final published version features the final layout of the paper including the volume, issue and page numbers. Link to publication General rights Copyright and moral rights for the publications made accessible in the public portal are retained by the authors and/or other copyright owners and it is a condition of accessing publications that users recognise and abide by the legal requirements associated with these rights. • Users may download and print one copy of any publication from the public portal for the purpose of private study or research. • You may not further distribute the material or use it for any profit-making activity or commercial gain • You may freely distribute the URL identifying the publication in the public portal. If the publication is distributed under the terms of Article 25fa of the Dutch Copyright Act, indicated by the “Taverne” license above, please follow below link for the End User Agreement: www.tue.nl/taverne Take down policy If you believe that this document breaches copyright please contact us at: [email protected] providing details and we will investigate your claim. Download date: 27. Sep. 2021 Model-based interface framework Aldo D. Martinez September 2016 Model-based interface framework Aldo D. Martinez September 2016 Model-based interface framework An extensible framework for automatic generation of test cases and wrappers Eindhoven University of Technology Stan Ackermans Institute / Software Technology Partners FEI Company Eindhoven University of Technology Steering Group Andrei Radulescu Paul Janson Tim Willemse Date September 2016 Document Status Public The design described in this report has been carried out in accordance with the TU/e Code of Scientific Conduct. Contact Eindhoven University of Technology Address Department of Mathematics and Computer Science MF 5.097b, P.O. Box 513, NL-5600 MB, Eindhoven, The Netherlands +31402474334 Published by Eindhoven University of Technology Stan Ackermans Institute Printed by Eindhoven University of Technology UniversiteitsDrukkerij SAI report no. Eindverslagen Stan Ackermans Instituut ; 2016/043 Abstract Automation through model-based development is becoming more and more popular between companies with big software systems. Due to the innate complexity of the systems a significant amount of time has to be invested for the development activities, such as, maintenance, updating, and testing. These activities imply repetition and tend to have an error prone nature. This report describes a model-based framework project for modeling software interfaces with a high-level homogenous representation that can be later used for the automatic generation of test cases and wrappers. A formal modeling language is defined based on the analysis of implemented software interfaces at FEI focusing on the description of the main elements and behavior of an interface and removing technology-related values. A testing algorithm is proposed in which test cases are generated based on state transitions of the interface model, described through a state machine. All these features have been implemented into a prototype that demonstrates the feasibility of testing and wrapping automation. Keywords Model-based development, state machine testing, behavioural testing, model-based testing, black-box testing, software quality, wrapping technologies, Domain Specific Languages, code generators, modeling languages, testing automation, model transformations, software technology, PDEng Preferred Model-based interface framework: An extensible framework for automatic generation of test reference cases and wrappers. , SAI Technical Report, September 2015. (Eindverslagen Stan Ackermans Instituut ; 2016/043) Partnership This project was supported by Eindhoven University of Technology and FEI Company. Disclaimer Reference herein to any specific commercial products, process, or service by trade name, Endorsement trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by the Eindhoven University of Technology or FEI Company. The views and opinions of authors expressed herein do not necessarily state or reflect those of the Eindhoven University of Technology or FEI Company, and shall not be used for advertising or product endorsement purposes. Disclaimer While every effort will be made to ensure that the information contained within this report is Liability accurate and up to date, Eindhoven University of Technology makes no warranty, representation or undertaking whether expressed or implied, nor does it assume any legal liability, whether direct or indirect, or responsibility for the accuracy, completeness, or usefulness of any information. Trademarks Product and company names mentioned herein may be trademarks and/or service marks of their respective owners. We use these names without any particular endorsement or with the intent to infringe the copyright of the respective owners. Copyright Copyright © 2016. Eindhoven University of Technology. All rights reserved. No part of the material protected by this copyright notice may be reproduced, modified, or redistributed in any form or by any means, electronic or mechanical, including photocopying, recording, or by any information storage or retrieval system, without the prior written permission of the Eindhoven University of Technology and FEI Company. Foreword Within FEI, we partition the software into server software, providing the microscope control and safety, and applications, implementing advanced functionalities and user interfaces. We formalize the server interfaces as the contract between the server and the applications. We have defined this project to automate the tedious, time- consuming activities around the interfaces: ─ Tests, ensuring the interface correctness while the software evolves, and ─ Wrappers, bridging the technologies boundaries between the server (C++), the interface (COM) and the applications (C++. C#, python). Fortunately, Aldo has shown interest in this project and has picked it for his graduation thesis. After an initial exploration phase, we have chosen to develop our own language to have the full flexibility of concisely covering our requirements. Aldo has quickly become familiar with both the FEI server technologies, and xtext / xtend, in which the Model-Based Interface Framework has been developed. He has created a language for modelling interfaces, capturing both their semantics and behavior. Further, he created language extensions targeting the specifics of testing and wrapper generation. Aldo has created a test framework providing full functional coverage. The wrapper generators can cover not only technology translations, but also other interface artifacts, such as multi-client arbitration or tracing. We have run the project in an agile manner. Aldo has constantly kept a running version of the framework, over which we have iterated multiple, defining and (re)prioritizing tasks as we have learned more. We have aimed at maximizing the types of features we could cover with the framework, and applying them to concrete server interfaces with increased level of complexity. Aldo ensured the project run smoothly, was able to adapt to changing requirements, and successfully tackled all challenges arising over time. The results are very promising. We have involved a team in a test trial, which has shown that the framework is ease to use and complete enough to enable modelling and testing interfaces in a short time. A few missing features were identified, which can easily be added to the framework. Surprisingly, the main challenge faced during the trial was actually not related to the framework, but to modelling and testing the behavior of one of their own legacy interfaces. Within FEI, we plan to further extend the framework, make it part of our build and test processes, and use it by all our teams. With the increased productivity and increased test coverage it provides, we believe it will quickly be adopted by our teams, which will be able to spend more time on features and to guarantee the quality of their interfaces. PROJECT MANAGER Dr. Andrei Radulescu September 2016 Preface This document summarizes the “Model-based interface framework: An extensible framework for automatic generation of test cases and wrappers” project. The project addresses the challenges of testing and wrapper automation using model- based technologies and applying them into a high-complex software system. The project has been executed by Aldo D. Martinez from the Stan Ackermans
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages151 Page
-
File Size-