A Survey Of Model Driven Testing Techniques Accounting Essay

Published: October 28, 2015 Words: 1603

M. Mussa et al [1] built a comparison matrix of 15 different testing approaches according to specific criteria including the modeling language, automatic test generation, the testing target, and the tool support. Their results are helpful for software engineers while selecting a testing approach that best fit their needs and also for researchers in the field as a reference work that can help them build upon existing approaches.

2) A model based testing technique to test web applications using statecharts (H. Raza et al, 2008)

A model-based testing method for web applications has been discussed by H. Raza et al [2] that utilize behavioral models of the software under test from State Charts models. Since the focus of technique was on the front end of the web application, the language used for developing the technique was HTML. The approach was supported with a simple web application to show its practicality. However, browser compatibility was not considered.

3) Model Based Testing Using Software Architecture (H. Reza and S. Lande, 2010)

H. Reza and S. Lande [3] has discussed a hybrid testing method to generate test cases which is the combination of benefits of both model-based testing as well as software architecture. The approach employs Software Architecture as an input to model-based testing to generate the test cases. Simultaneous performance of two operations i.e. software testing and product development is the strength of this technique. Feasibility of the method was illustrated by a Client/Server system.

4) Test Generation for Graphical User Interfaces Based on Symbolic Execution (S. Ganov et al, 2008)

S. Ganov et al [4] introduced a technique for systematically checking GUI applications that obtain data input through symbolic execution. The presented tool Barad performs automatic Java bytecode instrumentation and concrete input generation for the data widgets of the GUIs. Barad complements the traditional approaches by providing a technique for testing a class of GUI applications. Some limitations of the symbolic execution have also been discussed.

5) A Model-based Approach for Robustness Test Generation (T. Yano et al, 2011)

By using an executable version of the state models, a dynamic robustness test cases generation has been proposed by T. Yano et al [5]. A meta-heuristics search based algorithm called M-GEOvsl (Multi-Objective Generalized Extremal Optimization with variable string length) has been used to generate test cases taking into account the control and data aspects of the model.

6) A Model Driven Approach towards Business Process Test Case Generation (Q. Yuan et al, 2008)

A model driven approach towards generating executable test case from the given business process has been proposed by Q. Yuan et al [6]. To implement the approach, a business process model based on the BPEL specification and UML2.0 activity diagram and a test case model based on U2TP framework and TTCN-3 has been defined. The effectiveness of the approach has been demonstrated by conducting a case study of common loan process. However some threats to the validity of the approach have also been discussed.

7) Automatic Test Case Generation for UML Activity Diagrams (C. Mingsong et al, 2006)

An automatic test case generation approach for UML activity diagrams has been presented by C. Mingsong et al [7]. The approach results a reduced test case set which meets the test adequacy criteria and has been implemented into a tool prototype AGTCG. The method is distinctive due to totally automated execution. The strength of the tool is that it allows the users to construct, edit, and analyze Activity Diagram interactively. However, the research ignores the support of tool with a case study which is its limitation.

8) Efficient Software Test Case Generation Using Genetic Algorithm Based Graph Theory (Dr. V. Rajappa et al, 2008)

To overcome problems of model based testing, Dr. V. Rajappa et al [8] introduced a graph theory based genetic approach to generate test cases. The technique decided the complete mechanism of the state transition for the system to be tested. This procedure is more concrete in case of network testing. Minimization of the probability of untested paths for a given system is the strength of the technique.

9) Model-based Testing of Web Service Compositions (F. Belli et al, 2011)

F. Belli et al [9] designed an event-oriented approach, named ESG4WSC (ESG for Web Service Composition), to test web service compositions. The approach describes event sequence graphs to consider the specific features of web service compositions and can broadly be applied without any constraints. A case study demonstrated the applicability of the methodology. However, its strength stems from its potential to fit well for cases where BPEL or WS-CDL specifications are not available.

10) A Model-Based Regression Testing Approach for Evolving Software Systems with Flexible Tool Support (Q. Farooq et al, 2010)

START, a regression testing tool compliant with UML 2.1 has been reported by Q. Farooq et al [10]. START deals with dependencies of state machines with class diagrams for regression test selection. It was applied on a case study and the results exhibited noteworthy reduction in the test cases. Easy integration with other modeling environments and testing tools is the strength of START.

Amna Ejaz:

11) Early UML Model Testing using TTCN-3 and the UML Testing Profile (P. Baker and C. Jervis, 2007)

P. Baker and C. Jervis [11] explained a test environment developed by Motorolas Software Design Automation group that generates test cases from UML models. The tools used by the technique are UMB and cosim. The test automation is the key strength of the tool whereas the technique still has rooms for improvements.

12) A Model-Based Testing Using Scenarios and Constraints-based Modular Petri Nets (H. Reza and S.D. Kerlin, 2011)

H. Reza and S.D. Kerlin [12] proposed a testing tool that derive Constraints-based Modular Petri Nets (CMPN) from the scenarios and then draw test cases from CMPN. CMPN is a graphical representation of scenarios that reduces ambiguities of the textual language and helps in finding maximum test cases. Generation of additional states resulting in testing overhead is the major drawback of the technique.

13) An Event-Based Approach to Generate Test Scenarios (S. Sabharwal et al, 2010)

S. Sabharwal et al [13] have presented a Event-flow model to automate testing procedure. Events are directly translated into Event-flow graph without producing UML diagrams first and then this graph is used to generate test scenarios. An Automatic Production Environment (APE) case study is presented to support the technique. However, it does not find all possible test cases for an event.

14) Towards Model-Based Testing with Architecture Models (S. Schulz et al, 2007)

S. Schulz et al [14] have designed a support tool that makes abstract architectural system model through Lyra modeling method and then draw test sequences from it. The technique is applied to Nokia series 60 camera application to draw the results using Conformiq Qtronic off-the-shelf tool for testing. Complexity is significantly reduced by using architectural models. The technique does not ensure the correctness of data flowing in the model.

15) A GUI Crawling-based technique for Android Mobile Application Testing (D. Amalfitano et al, 2011)

A GUI Crawling-based technique is introduced by D. Amalfitano et al [15] for crash and regression testing of Android applications. An Android Automatic Testing Tool is developed that perform GUI exploration to find runtime faults as well as test the code for uncaught exceptions. The only limitation is its code dependency for testing.

16) Graph Theory Model Based Automatic Test Platform Design (Z. Wei and W. Xiaoxue, 2010)

To automate the testing procedure, Z. Wei and W. Xiaoxue [16] designed a tool to test system requirements. Graph theory model technique is used to present requirements in UML modeling which is then used to draw test cases. The tool gives a detailed report on executed cases. The major strength of the tool lies in its usability by all types of software system. Script-driven test execute tool is the only limitation of the technique.

17) Automated Model Based Software Test Data Generation System (M.F. Bashir and S.H.K. Banuri, 2008)

M.F. Bashir and S.H.K. Banuri [17] compared different code based test data generation techniques and then extended the scope code based techniques to be used for black box testing. Control flow graph technique is used to generate graph from code, specifications or models that are used in test data generation. This approach gives a new way of research in code based testing.

18) A study on the methods of software testing based on the design models (T. Xie et al, 2011)

A software testing method based on UML design model to find the difference between design model and implementation model is proposed by T. Xie et al [18]. Beverage vending machines case study is discussed to draw the test cases. The choice of formal method for transformation is the key issue of this technique.

19) Model-Based Testing using Symbolic Animation and Machine Learning (P. Bu et al, 2010)

P. Bu et al [19] have proposed a hybrid technique that takes the advantages of both Leirios Test Generator and ProTest techniques to add diversity in testing. Scheduler application and Demoney case study were considered to observe the results. The results on Demoney case study were not satisfactory whereas the effectiveness of the technique was verified by Scheduler case study.

20) A Test Generation Solution to Automate Software Testing (F. Bouquet et al, 2008)

F. Bouquet et al [20] discussed a tool for automatic testing of software systems. LEIRIOS Smart TestingTM is an approach for generating tests from UML models. A StarUML project management case study is presented to show the behavior of the tool. The major strength of the tool lies in its commercial usage in the market.