A test automation language framework for behavioral models

Model-based testers design tests in terms of models, such as paths in graphs. This results in abstract tests, which have to be converted to concrete tests because the abstract tests use names and events that exist in the model, but not the implementation. Model elements often appear in many abstract tests, so testers write the same redundant code many times. However, many existing model-based testing techniques are very complicated to use in practice, especially in agile software development. Thus, testers usually have to transform abstract tests to concrete tests by hand. This is time-consuming, labor-intensive, and error-prone. This paper presents a language to automate the creation of mappings from abstract tests to concrete tests. Three issues are addressed: (1) creating mappings and generating test values, (2) transforming graphs and using coverage criteria to generate test paths, and (3) solving constraints and generating concrete tests. Based on the language, we developed a test automation language framework. The paper also presents results from an empirical comparison of testers using the framework with manual mapping on 11 open source and 6 example programs. We found that the automated test generation method took 29.6% of the time the manual method took on average, and the manual tests contained 48 errors in which concrete tests did not match their abstract tests while the automatic tests had zero errors.

[1]  Clémentine Nebut,et al.  Automatic test generation: a use case driven approach , 2006, IEEE Transactions on Software Engineering.

[2]  Angelo Gargantini,et al.  Model-Driven Testing for Web Applications Using Abstract State Machines , 2012, ICWE Workshops.

[3]  Peter Fröhlich,et al.  Automated Test Case Generation from Dynamic Models , 2000, ECOOP.

[4]  Doo-Hwan Bae,et al.  Test cases generation from UML state diagrams , 1999, IEE Proc. Softw..

[5]  Lionel C. Briand,et al.  A UML-Based Approach to System Testing , 2001, UML.

[6]  Frank Budinsky,et al.  Eclipse modeling framework : a developer's guide , 2004 .

[7]  David Lugato,et al.  Validation and automatic test generation on UML models: the AGATHA approach , 2002, Electron. Notes Theor. Comput. Sci..

[8]  Jacob Cohen Statistical Power Analysis for the Behavioral Sciences , 1969, The SAGE Encyclopedia of Research Design.

[9]  Bruno Legeard,et al.  A taxonomy of model‐based testing approaches , 2012, Softw. Test. Verification Reliab..

[10]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[11]  Marie Weisz Program Development In Java Abstraction Specification And Object Oriented Design , 2016 .

[12]  Mark Harman,et al.  Formal methods and testing: an outcome of the FORTEST network , 2008 .

[13]  A. Jefferson Offutt,et al.  An Empirical Analysis of Test Oracle Strategies for Model-Based Testing , 2014, 2014 IEEE Seventh International Conference on Software Testing, Verification and Validation.

[14]  Donald P. Ryan,et al.  Papyrus , 1988, The Biblical Archaeologist.

[15]  A. Jefferson Offutt,et al.  Introduction to Software Testing , 2008 .

[16]  Nan Li A Smart Structured Test Automation Language (SSTAL) , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[17]  Fei Li,et al.  Better Algorithms to Minimize the Cost of Test Paths , 2012, 2012 IEEE Fifth International Conference on Software Testing, Verification and Validation.

[18]  P. Lachenbruch Statistical Power Analysis for the Behavioral Sciences (2nd ed.) , 1989 .

[19]  J. Miles,et al.  Applying regression & correlation : a guide for students and researchers , 2001 .

[20]  Johannes RyserÊÊÊÊÊÊÊÊÊÊÊÊÊÊMartin Glinz,et al.  A Scenario-Based Approach to Validating and Testing Software Systems Using Statecharts , 1999 .

[21]  A. Jefferson Offutt,et al.  Generating Tests from UML Specifications , 1999, UML.

[22]  Nikolai Tillmann,et al.  A Model-to-Implementation Mapping Tool for Automated Model-Based GUI Testing , 2005, ICFEM.

[23]  Andreas Ulrich,et al.  From Scenarios to Test Implementations Via Promela , 2010, ICTSS.

[24]  A. Jefferson Offutt,et al.  Transformation Rules for Platform Independent Testing: An Empirical Study , 2013, 2013 IEEE Sixth International Conference on Software Testing, Verification and Validation.

[25]  Bohn Stafleu van Loghum,et al.  Online … , 2002, LOG IN.

[26]  Margus Veanes,et al.  Model-Based Testing of Object-Oriented Reactive Systems with Spec Explorer , 2008, Formal Methods and Testing.

[27]  Shaoying Liu,et al.  Generating test data from state‐based specifications , 2003, Softw. Test. Verification Reliab..

[28]  Richard Boddy,et al.  Effective Experimentation: For Scientists and Technologists , 2010 .

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