Model-Driven Test Case Migration: The Test Case Reengineering Horseshoe Model

Existing test cases represent important assets, which are worth reusing in software migration projects. The benefit is twofold, reuse of relevant information as well cost saving by avoiding design of new test cases. As test cases are implemented in the same or a compatible technology as the system they are testing, they have to somehow follow the system migration, i.e., they should be co-migrated. Due to the size of the test case set, and often missing conformity in the structure of the test cases, migration of test cases is a quite challenging task. As model-driven engineering has been established to manage those complex tasks, we apply it in the test case domain. In this paper, we propose a generic migration method based on model-driven reengineering techniques. Our method which involves reverse engineering, restructuring, and forward engineering is applied in an industrial case study where appropriate tooling was developed as well.

[1]  Reiko Heckel,et al.  Towards Model-Driven Testing , 2003, TACoS.

[2]  Ina Schieferdecker,et al.  The UML 2.0 Testing Profile and Its Relation to TTCN-3 , 2003, TestCom.

[3]  Gregor Engels,et al.  Towards model-driven unit testing , 2006, MoDELS'06.

[4]  Paul A. Strooper,et al.  Automated Generation of Test Cases Using Model-Driven Architecture , 2007, Second International Workshop on Automation of Software Test (AST '07).

[5]  Andreas Ulrich,et al.  The ETSI Test Description Language TDL and its application , 2014, 2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD).

[6]  Christof Lutteroth,et al.  FormTester: Effective Integration of Model-Based and Manually Specified Test Cases , 2015, 2015 IEEE/ACM 37th IEEE International Conference on Software Engineering.

[7]  Harry M. Sneed,et al.  Risks involved in reengineering projects , 1999, Sixth Working Conference on Reverse Engineering (Cat. No.PR00303).

[8]  Jean-Marc Jézéquel,et al.  Model-driven engineering for software migration in a large industrial context , 2007, MODELS'07.

[9]  Tassilo Horn,et al.  Model-Driven Software Migration , 2010, Software Engineering.

[10]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[11]  Alexander Pretschner,et al.  Methodological Issues in Model-Based Testing , 2004, Model-Based Testing of Reactive Systems.

[12]  Jordi Cabot,et al.  Model-Driven Software Engineering in Practice , 2017, Synthesis Lectures on Software Engineering.

[13]  Beatriz Pérez Lamancha,et al.  Automated model-based testing using the UML testing profile and QVT , 2009, MoDeVVa '09.

[14]  Jordi Cabot,et al.  MoDisco: a generic and extensible framework for model driven reverse engineering , 2010, ASE.

[15]  Gerard Meszaros,et al.  xUnit Test Patterns: Refactoring Test Code , 2007 .

[16]  Amin Milani Fard,et al.  Leveraging existing tests in automated test generation for web applications , 2014, ASE.

[17]  Andreas Menychtas,et al.  Software modernization and cloudification using the ARTIST migration methodology and framework , 2014, Scalable Comput. Pract. Exp..

[18]  Rick Kazman,et al.  Requirements for integrating software architecture and reengineering models: CORUM II , 1998, Proceedings Fifth Working Conference on Reverse Engineering (Cat. No.98TB100261).

[19]  Tiziana Margaria,et al.  Test-based model generation for legacy systems , 2003, International Test Conference, 2003. Proceedings. ITC 2003..

[20]  Mika Katara,et al.  Synthesizing Test Models from Test Cases , 2008, Haifa Verification Conference.

[21]  Bing Wu,et al.  Legacy Information Systems: Issues and Directions , 1999, IEEE Softw..

[22]  Enes Yigitbas,et al.  Towards a Model-Driven Method for Reusing Test Cases in Software Migration Projects , 2016, Softwaretechnik-Trends.

[23]  Jean Bézivin,et al.  ATL: A model transformation tool , 2008, Sci. Comput. Program..

[24]  Marvin Grieger,et al.  Model-Driven software modernization: concept-based engineering of situation-specific methods , 2016 .

[25]  Danilo Caivano,et al.  Model-Driven Test Code Generation , 2011, ENASE.

[26]  Gregor Engels,et al.  Concept-Based Engineering of Situation-Specific Migration Methods , 2016, ICSR.