Development of an efficient data coverage strategy for testmanager

Model-based testing (MBT) emerged during the last years as a new approach to deal with the testing of complex software systems, generating sets of test cases automatically. MBT may be implemented following different approaches, the most common ones being: transition, data and state coverage. This MSc thesis focuses on the combination of transition and data coverage in order to achieve a more complete testing. This combination is approached by the use of two black box techniques: equivalence partitioning and boundary value analysis. GNU Prolog (Gprolog) software, a constraint solver, has been selected as a solution for both obtaining an immediate solution and achieving the domain of a constraint. Achieved results on a small but realistic case study show acceptable execution times in order to get 100% transition and boundary value coverage. Further results are a boundary value coverage/time graph, an application of boundary value analysis not only to numeric values but to most common data types, and a set of metrics in order to evaluate results. All these achievements were gathered in a boundary value strategy, named BVA, a data oriented strategy. As a conclusion, it is shown that merging MBT approaches results in more benefits that the single use of one of them.

[1]  Kenneth A. Foster Error Sensitive Test Cases Analysis (ESTCA) , 1980, IEEE Transactions on Software Engineering.

[2]  M. Pagano,et al.  Student's t test. , 1993, Nutrition.

[3]  Olaf Wolkenhauer,et al.  Encyclopedia of Systems Biology, Vol. X , 2013 .

[4]  Damodaram Kamma,et al.  Effective unit-testing in model-based software development , 2014, AST 2014.

[5]  Stephan Weißleder Test models and coverage criteria for automatic model-based test generation with UML state machines , 2010 .

[6]  James R. Larus,et al.  Software and the Concurrency Revolution , 2005, ACM Queue.

[7]  Viv Bewick,et al.  Statistics review 9: One-way analysis of variance , 2004, Critical care.

[8]  Hendrik Michaël van der Bijl,et al.  On changing models in model-based testing , 2011 .

[9]  Matt Wynne,et al.  The Cucumber Book: Behaviour-Driven Development for Testers and Developers , 2012 .

[10]  Armin Beer,et al.  Efficient Test Data Generation for Variables with Complex Dependencies , 2008, 2008 1st International Conference on Software Testing, Verification, and Validation.

[11]  V. Basili Software modeling and measurement: the Goal/Question/Metric paradigm , 1992 .

[12]  William E. Howden,et al.  Weak Mutation Testing and Completeness of Test Sets , 1982, IEEE Transactions on Software Engineering.

[13]  Philippe Codognet,et al.  Design and Implementation of the GNU Prolog System , 2001, J. Funct. Log. Program..

[14]  Jan Tretmans,et al.  Test Generation with Inputs, Outputs and Repetitive Quiescence , 1996, Softw. Concepts Tools.

[15]  Arend Rensink,et al.  Compositional Testing with ioco , 2003, FATES.

[16]  Dave Astels,et al.  The RSpec Book: Behaviour Driven Development with RSpec, Cucumber, and Friends , 2010 .

[17]  Peter Jeavons,et al.  Classifying the Complexity of Constraints Using Finite Algebras , 2005, SIAM J. Comput..

[18]  Andy Schürr,et al.  Graph Transformations for Model-based Testing , 2002, Modellierung.