Professional Documents
Culture Documents
82
I. INTRODUCTION
Model based testing (MBT) refers to the type of testing
process that focuses on deriving a test model using different
types of formal ones, then converting this test model into a
concrete set of test cases [1], [2], [3]. Those formal models
have many different types, but all of them are generally
categorized into three main categories: requirements models,
usage models, and source code dependant models. The
requirements models can be behavioral, interactional, or
structural models according to the perspective by which the
requirements are being looked at. The test cases derived from
behavioral or interactional models are functional test cases and
they have the same level of abstraction as the models creating
them. These kinds of test cases differ from those derived using
structural models. Other types of models can be used as well
to extract test cases [3], [4], [5], [6]; The Unified Modeling
Language (UML) models are considered one of the most
highly ranked types being used [7]-[14].
Generated test cases require test data for their execution which
makes the test data generation a building block activity in the
overall test cases execution process. Test data can be derived
from different UML models as well as other different types of
models. Search based testing models are one of the most
important models used; they include evolutionary models and
Genetic algorithms [15]. In order to be able to claim that the
IJENS
83
IJENS
84
IJENS
85
IJENS
86
IJENS
REFERENCES
[1]
[2]
[3]
[4]
[5]
[6]
[7]
[8]
[9]
[10]
[11]
V. CONCLUSION
A discussion on the core test processes related approaches,
which emerged during the last decade, has been covered in this
paper. The test cases extraction and the test data generation
being the main building blocks in any testing process made
them acquire recently great attention by many researchers
trying to automate them in order to increase their benefits. This
paper discusses many methodologies for generating test cases
from UML models, whether behavioral, interactional or
structural models, as well as other different types of models. It
also covers many test data generation techniques based on
evolutionary testing, genetic algorithms, and other more.
Furthermore, several techniques for optimizing or reducing
test cases are discoursed. Implementation of any of the test
case generation, test data extraction or the optimization and
reduction techniques can be future work. As well as applying
those techniques in industry and creating tools that can
automate them. Moreover, comparisons between those
different techniques can be done to show the differences
between them or prove the effectiveness of some techniques
over others.
87
[12]
[13]
[14]
[15]
[16]
[17]
[18]
[19]
[20]
IJENS
88
[43] Javed AZ, Strooper PA and Watson GN. Automated generation of test
cases using model-driven architecture. Proceedings of Second
International Workshop on Automation of SoftwareTest 2007 (AST
'07): Minnesota, U.S.A., 2007.
[44] Ismail N, Ibrahim R, Ibrahim N. Automatic Generation of Test Cases
from Use-Case Diagram. Proceedings of the International Conference on
Electrical Engineering and Informatics Institut Teknologi: Bandung,
Indonesia, 2007.
[45] Swain SK and Mohapatra DP. Test Case Generation from Behavioral
UML Models. International Journal of Computer Applications (IJCA),
2010. Published By Foundation of Computer Science.
[46] Ali S, Briand LC, Jaffar-Ur Rehman M, Asghar H, Iqbal MZZ, and
Nadeem A. A State-based Approach to Integration Testing based on
UML Models. Information and Software Technology journal, 2007.
[47] Srivastava PR, Puyalnithi T, Verma B, and Raghurama G. State
Oriented Software Integration Testing for Object Oriented Applications.
European Journal of Scientific Research, 2008.
[48] Raza N, Nadeem A, and Iqbal MZZ. An Automated Approach to
System Testing based on Scenarios and Operation Contracts.
Proceedings of the 7th QSIC: Portland, Oregon, USA, 2007.
[49] Ogata S and Matsurra S. Towards the Reliable Integration Testing:
UML-based Scenario Analysis using an Automatic Prototype
Generation Tool. Proceedings of the 9th World Scientific and
Engineering Academy and Society (WSEAS) international conference
on Software engineering, parallel and distributed systems (SEPADS),
University of Cambridge: UK, 2010.
[50] Ogata S and Matsurra S. A Method of Automatic Integration Test Case
Generation from UML-based Scenario. Journal of World Scientific and
Engineering Academy and Society (WSEAS) Transactions on
Information Science and Applications, 2010.
[51] Pfaller C. Requirements-Based Test Case Specication by Using
Information from Model Construction. Proceedings of the 3rd
International Workshop on Automation of Software Test: Leipzig, 2008.
[52] Mealy GH. A Method to Synthesizing Sequential Circuits. Bell Systems
Technical Journal 1955; 34 (5): 1045-1079.
[53] Charles HR, Jr. Fundamentals of Logic Design. 5th Edition, ThomsonEngineering, 2003.
[54] Name Withheld. Automatically Generating Test Cases Using UML
Structure
Diagrams
2009.
http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.170.1937 [4
February 2011].
[55] Crichton C, Cavarra A, and Davies J. Using UML for Automatic Test
Generation. Proceedings of ISSTA Conference: Rome, Italy, 2002.
[56] Farooq Q, Iqbal MZ, Malik ZI, and Nadeem A. An Approach for
Selective State Machine based Regression Testing. In Proceedings of the
3rd International Workshop on Advances in Model-Based Testing:
London, UK, 2007.
[57] Garousi V, Briand L and Labiche Y. Control ow analysis of UML 2.0
Sequence
diagrams.TechnicalReport2005,http://www.sce.carleton.ca/squall/pubs/t
ech_report/TR_SCE-05-09.pdf [4 February 2011].
[58] Ali A, Nadeem A, Iqbal MZ and Usman M. Regression Testing based
on UML Design Models. PRDC '07 Proceedings of the 13th Pacific Rim
International Symposium on Dependable Computing Conference:
Melbourne, Victoria, Australia, 2007.
[59] Alhroob A, Dahal K, Hossain A. Automatic Test Cases Generation from
Software Specifications. e-Informatica Software Engineering Journal
2010; 4(1).
[60] Yuan X, and Memon AM. Generating Event Sequence-Based Test
Cases Using GUI Run-Time State Feedback. Journal of IEEE
Transactions on Software Engineering 2010; 36(1).
[61] Clements P and Northrop L. Software Product Lines: Practices and
Patterns. Addison-Wesley Professional, 3rd edition, 2001.
[62] Cuevas DB. On The Automated Analysis of Software Product Lines
using Feature Models: A Framework for Developing automated tool
support. Doctoral dissertation, 2007.
[63] Llc Books. SAT Solvers: Dpll Algorithm, Chaff Algorithm, Grasp, Satz.
Books Llc, 2010.
[64] Perrouin G, Sen S, Klein J, Baudry B, and Traon Y. Automated and
Scalable T-wise Test Case Generation Strategies for Software Product
IJENS
[65]
[66]
[67]
[68]
[69]
[70]
[71]
[72]
[73]
[74]
[75]
[76]
[77]
[78]
[79]
[80]
[81]
[82]
[83]
[84]
89
[85] Zhan Y and Clark JA. The state problem for test generation in simulink.
Proceedings of the 8th annual Conference on Genetic and Evolutionary
Computation (GECCO 06): Seattle, Washington, USA, 2006.
[86] Ghani K, Clark JA, and Zhan Y. Comparing Algorithms for SearchBased Test Data Generation of Matlab Simulink Models. CEC'09
Proceedings of the Eleventh conference on Congress on Evolutionary
Computation: Trondheim, Norway, 2009.
[87] Liu C, Kung DC, Hsia P, and Hsu C. Object-Based Data Flow Testing
of Web Applications. Proceedings of the The First Asia-Pacific
Conference on Quality Software (APAQS'00): Hong Kong, China,
2000.
[88] Vos TEJ, Baars AI, Lindlar FF, Kruse PM, Windisch A, and Wegener J.
Industrial Scaled Automated Structural Testing with the Evolutionary
Testing Tool. Proceedings of the Third International Conference on
Software Testing, Verification and Validation, Paris, France, 2010.
DOI: 10.1109/ICST.2010.24
[89] Lakhotia K, McMinn P, and Harman M. Automated Test Data
Generation for Coverage: Havent We Solved This Problem Yet?. TAICPART '09 Proceedings of the Testing: Academic and Industrial
Conference - Practice and Research Techniques: Cumberland Lodge,
Windsor, UK, 2009.
[90] Korel B, Tahat L, and Vaysburg B. Model Based Regression Test
Reduction Using Dependence Analysis. Proceedings of the 18th IEEE
International Conference on Software Maintenance (ICSM'02):
Montreal, Quebec, Canada, 2002.
[91] Li N, Xie T, Tillmann N, Halleux J, and Schulte W. Reggae: Automated
Test Generation for Programs using Complex Regular Expressions.
Proceedings of the IEEE/ACM International Journal on Automated
Software Engineering (ASE09): Auckland, New Zealand, 2009.
[92] Xie T, Tillmann N, Halleux J, and Schulte W. Fitness-Guided Path
Exploration in Dynamic Symbolic Execution. Proceedings of the 39th
Annual IEEE/IFIP International Conference on Dependable Systems and
Networks (DSN 2009): Estoril, Lisbon, Portugal, 2009.
[93] Daniel B, Jagannath V, Dig D, and Marinov D. Reassert: Suggesting
repairs for broken unit tests. In ASE09: Proceedings of the 24th
IEEE/ACM international Conference on Automated Software
Engineering. IEEE/ACM: Auckland, New Zealand, 2009.
[94] Daniel B, Gvero T, and Marinov D. On test repair using symbolic
execution. In Proceedings of the ISSTA 10: International Symposium
on Software Testing and Analysis: Trento, Italy, 2010.
[95] Tillmann N and de Halleux J. Pex -- White Box Test Generation for
.NET. In Proceedings of the second Conference on Tests and Proofs
(TAP): Prato, Italy, 2008.
IJENS