SlideShare una empresa de Scribd logo
1 de 4
Descargar para leer sin conexión
GUI Path Oriented Test Generation Algorithms

                                        Izzat Alsmadi
                               Department of computer science
                                North Dakota state university
                                  izzat.alsmadi@ndsu.edu


                                                 (performance testing), how does the
ABSTRACT                                         system react if its environment does not
Testing software manually is a labor             behave as expected (robustness testing),
intensive process. Efficient automated           and how long can we rely on the correct
testing can significantly reduce the             functioning of the system (reliability
overall cost of software development             testing).
and maintenance. Graphical User                          User interfaces have steadily
Interfaces (GUI’s) code has some                 grown more rich, more user interactive
characteristics that distinguish it from         and more sophisticated over time. In
the rest of the project code. Generating         many applications one of the major
test cases from the GUI code requires            improvements that are suggested with
different algorithms from those usually          the new releases is to improve the user
applied in test case generation. We              interface.
developed several GUI test generation                    Generating test cases can happen
automated algorithms that do not need            from requirements, design or the actual
any user involvement and that ensure             GUI implementation. Although it is
test adequacy in the generated test cases.       expected that those three should be
The test cases are generated from an             consistent and related, yet they have
XML GUI model or tree that represents            different    levels     of    abstraction.
the GUI structure. This work contributed         Requirements and design are usually of a
to the goal of developing fully GUI test         high level of abstraction to generate
automated framework.                             from them the test cases. On the other
                                                 hand the task of generating the test cases
General Terms                                    from the GUI implementation model
User interface,    Automatic     test   case     will be delayed until we implement the
generation.                                      GUI, which is usually occurred in the
Keywords                                         late implementation. We should not have
                                                 any problems in delaying GUI testing
Test Automation, GUI Testing, Test Case
Generation.                                      giving the fact that a tool will automate
                                                 the generation and executing process.
1. INTRODUCTION                                  We designed a tool in C# that uses
        Testing tries to answer the              reflection to serialize the GUI control
following questions(3): Does the system          components or widgets. Certain control
do what it should do, or does its                properties are selected to be serialized.
behavior comply with its functional              These properties are relevant to the user
specification (conformance testing), how         interface. The application then uses the
fast can the system perform its tasks            XML file that is produced to build the
                                                 GUI tree or the event flow graph and
generate the test cases. Generating the           appropriate test cases for these paths.
test cases takes into consideration the           These techniques can further be
tree structure. Test cases are selected           classified as static and dynamic. Static
with     the   consideration      of     the      techniques are often based on symbolic
effectiveness of the selected test suit. We       execution, whereas dynamic techniques
will    study the        fault    detection       obtain the necessary data by executing
effectiveness of our test case selections.        the program under test. Goal-oriented
        The algorithms developed to               techniques identify test cases covering a
generate test cases from the GUI are              selected goal such as a statement or
novels. The two factors that affect the           branch, irrespective of the path taken.
suggested     algorithms       were     first     Intelligent techniques of automated test
generating a valid test scenario in which         case generation rely on complex
each edge is a legal edge in the actual GUI       computations to identify test cases. The
model. The second factor is ensuring a            real challenge to test generation is in the
certain level of effectiveness on the             generation of test cases that are capable
generated test scenarios.                         of detecting faults in the IUT. We will
        The next section introduces the           list some of the works related to this
related work. Section 3 lists the goals of this
research and describes the work done toward
                                                  paper. Goga(2) introduce an algorithm
those goals. Section 4 introduces in              bases on probabilistic approach. It
summary the developed GUI Auto tool.              suggests combining the test generation
Section 5 presents the conclusion and future      and the test execution in one phase.
work.                                             Tretmans(3) studied test case generation
                                                  algorithms for implementations that
2. RELATED WORK                                   communicate via inputs and outputs,
         Software testing is about                based on specifications using Labelled
checking the correctness of the system            Transition Systems (LTS). In MulSaw
and confirming that the implementation            project (4), the team use 2
conforms to the specifications.                   complementary frameworks, TestEra
Conformance testing checks whether a              and Korat for specification based test
black box Implementation Under Test               automation. To test a method, TestEra
(IUT) behaves correctly with respect to           and Korat automatically generate all
its specification. The work in this paper         non-isomorphic test cases from the
is related to test case generation                method's pre-condition and check its
algorithms, automatic test case                   correctness using its post-condition as a
generation and GUI test case generation           test oracle. There are several papers
in software testing. Several approaches           related to this project. We have a similar
have been proposed for test case                  approach that focus on GUI testing. As
generation, mainly random, path-                  explained earlier, one of the goals of our
oriented, goal-oriented and intelligent           automatic generation of test scenarios is
approaches (5) and domain testing                 to produce non-isomorphic test
(which includes equivalence                       scenarios. We also check the results of
partitioning, boundary-value testing, and         the tests through comparing the output
the category-partition method) (7). Path-         results with event tables generated from
oriented techniques generally use control         the specification. Those event tables are
flow information to identify a set of             similar to the pre post condition event
paths to be covered and generate the              tables. Clay (6) presented an overview
for model based software testing using       for another tool that is capable of
UML. Prior to test case generation, we       producing small adequate test-sets that
develop an XML model tree that               can successfully verify that an
represents the actual GUI that is            implementation of the specification
serialized from the implementation. Test     produced is correct.
cases are then generated from the XML
model. Turner and Robson [8] have            In the specific area of GUI test case
suggested a new technique for the            generation, Memon (14) has several
validation of OOPS which emphasizes          papers about automatically generating
the interaction between the features and     test cases from the GUI using an AI
the object’s state. Each feature is          planner, the process is not totally
considered as a mapping from its starting    automatic and requires the user decision
or input states to its resultant or output   to set current and goal states. The AI
states affected by any stimuli. Tse, Chan,   planner will find the best way to reach
and Chen (9) and (11) introduce normal       the goal states giving the current state.
forms for an axiom based test case           Another issue with respect to this
selection strategy for Object oriented       research is that it does not address the
programs and equivalent sequences of         problem of the huge number of states
operations as an integration approach for    that a GUI in even small application can
object oriented test case generation. Orso   have and hence may generate too many
and Silva (10) introduce some of the         test cases. The idea of defining the GUI
challenges that Object Oriented              state as the collection state of each
technologies added to the process of         control and that the change of a single
software testing. Rajanna (12) studies       property in one control will lead to a
the impact and usefulness of automated       new state is valid but is the reason for
software testing tools during the            producing the huge amount of possible
maintenance phase of a software product      GUI states. We considered in our
by citing the pragmatic experiences          research another alternative definition of
gained from the maintenance of a             a GUI state. By generate an XML tree
critical, active, and very large             that represent the GUI structure, we can
commercial software product as a case        define the GUI state as embedded in this
study. It demonstrated that most of the      tree. This means that if the tree structure
error patterns reported during the           is changed, which is something that can
maintenance are due to the inadequate        be automatically checked, then we
test coverage, which is often the            consider this as a GUI state change.
outcome of manual testing, by relating       Although we generate this tree
the error patterns and the capability of     dynamically at run time and then any
various test data generators at detecting    change in the GUI will be reflected in
them. Stanford paper (13) is an example      the current tree, yet this definition can be
of using formal methods in defining the      helpful in certain cases where we want
specifications through object                to trigger some events ( like regression
specification tool that check for some       testing ) if the GUI state is changed.
properties like correctness. It is hoped     Mikkolainen (15) discusses some issues
that the application produced by this        related to GUI test automation
project should form the groundwork           challenges. Alexander (16) and Haward
                                             present the concept of critical path
testing for GUI test case generation.               7. Beizer, Boris. Software Testing Techniques.
They define the critical paths as those             Second Edition. New York, Van Nostrand
                                                    Reinhold, 1990.
paths that have “repeated” edges or                 8. Turner, C.D. and D.J. Robson. The State-
event in many test cases. The approach              based Testing of Object-Oriented Programs.
utilizes earlier manually created test              Proceedings of the 1993 IEEE Conference on
cases through a captureplay back tool.             Software Maintenance (CSM- 93), Montreal,
Although this is expected to be an                  Quebec, Canada, Sep. 1993.
                                                    9. T.H. Tse, F.T. Chan, H.Y. Chen. An Axiom-
effective way of defining critical paths,           Based Test Case Selection Strategy for Object-
yet it is not automatically calculated. As          Oriented Programs. University of Hong Kong,
an alternative to the need of defining              Hong Kong. 94.
critical paths from run time, we define in          10. Orso, Alessandro, and Sergio Silva. Open
one algorithm static critical paths                 issues and research directions in Object Oriented
                                                    testing. Italy. AQUIS98.
through the use of metric weights. The              11. T.H. Tse, F.T. Chan, H.Y. Chen. In Black
metric weight is calculated by counting             and White: An Integrated Approach to Object-
all the children- or grand children for a           Oriented Program Testing. University of Hong
control. Other ways of defining critical            Kong, Hong Kong. 96.
paths is by measuring delay time during             12. Rajanna V. Automated Software Testing
                                                    Tools and Their Impact on Software
execution, or by manually locating                  Maintenance- An Experience. Tata Consultancy
critical paths from specification. From             Services.
the specification a critical path can be a          13. Stanford, Matthew. Object specification tool
path that is calling an external API,               using VTL. Master dissertation. University of
saving to or calling an external file.              Sheffield. 2002.
                                                    14. Memon, Atef. Hierarchical GUI Test Case
                                                    Generation Using Automated Planning. IEEE
3. GOALS AND APPROACHES                             transactions on software engineering. 2001. vol
                                                    27.
                                                    15. Mikkolainen, Markus. Automated
4.CONCLUSION AND FUTURE WORK                        Graphical User Interface Testing. 2006.
                                                    www.cs.helsinki.fi/u/paakki/mikkolainen.pdf.
                                                    16. Alexander K, Ames and Haward Jie.
5. REFERENCES                                       Critical Paths for GUI Regression Testing.
1. Pettichord, Bret. Homebrew test automation.
                                                    www.cse.ucsc.edu/~sasha/proj/gui_testing.
ThoughtWorks. Sep. 2004.
                                                    pdf
www.io.com/~wazmo/ papers/
homebrew_test_automation_200409.pdf.
2. Goga, N. A probabilistic coverage for on-the-y
test generation algorithms. Jan. 2003.
fmt.cs.utwente.nl/publications/files/
398_covprob.ps.gz.
3. Jan Tretmans: Test Generation with Inputs,
Outputs, and Quiescence. TACAS 1996: 127-
146.
4. Software Design Group. MIT. Computer
Science and Artificial Intelligence Laboratory.
2006. http://sdg.csail.mit.edu/index.html.
5. Prasanna, M, S.N. Sivanandam R.Venkatesan.
and R.Sundarrajan. A survey on automatic test
case generation. Academic Open Internet
Journal. Vol. 15. 2005.
6. Williams, Clay. Software testing and the
UML. ISSRE99. 99. http://www.chillarege.com
/fastabstracts/issre99/.

Más contenido relacionado

La actualidad más candente

Testing terms & definitions
Testing terms & definitionsTesting terms & definitions
Testing terms & definitionsSachin MK
 
Software testing quiz questions and answers
Software testing quiz questions and answersSoftware testing quiz questions and answers
Software testing quiz questions and answersRajendraG
 
Manuel testing word
Manuel testing wordManuel testing word
Manuel testing wordVijay R
 
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...IAEME Publication
 
Thetheoryofsoftwaretesting
ThetheoryofsoftwaretestingThetheoryofsoftwaretesting
ThetheoryofsoftwaretestingPiyushMehta57
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented AnalysisAMITJain879
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software TestingNishant Worah
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented DesignAMITJain879
 
Unit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software EngineeringUnit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software Engineeringijtsrd
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategiesKrishna Sujeer
 
Software testing
Software testingSoftware testing
Software testingSengu Msc
 
Testing and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nTesting and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nIAEME Publication
 
A survey of software testing
A survey of software testingA survey of software testing
A survey of software testingTao He
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLCIJEACS
 
Software testing q as collection by ravi
Software testing q as   collection by raviSoftware testing q as   collection by ravi
Software testing q as collection by raviRavindranath Tagore
 

La actualidad más candente (20)

Testing terms & definitions
Testing terms & definitionsTesting terms & definitions
Testing terms & definitions
 
Software testing quiz questions and answers
Software testing quiz questions and answersSoftware testing quiz questions and answers
Software testing quiz questions and answers
 
Manuel testing word
Manuel testing wordManuel testing word
Manuel testing word
 
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...
EXPERIMENTAL EVALUATION AND RESULT DISCUSSION OF METAMORPHIC TESTING AUTOMATI...
 
50120140502017
5012014050201750120140502017
50120140502017
 
Thetheoryofsoftwaretesting
ThetheoryofsoftwaretestingThetheoryofsoftwaretesting
Thetheoryofsoftwaretesting
 
Object Oriented Analysis
Object Oriented AnalysisObject Oriented Analysis
Object Oriented Analysis
 
Types of Software Testing
Types of Software TestingTypes of Software Testing
Types of Software Testing
 
Object Oriented Design
Object Oriented DesignObject Oriented Design
Object Oriented Design
 
Unit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software EngineeringUnit Testing to Support Reusable for Component-Based Software Engineering
Unit Testing to Support Reusable for Component-Based Software Engineering
 
Software testing strategies
Software testing strategiesSoftware testing strategies
Software testing strategies
 
Software testing
Software testingSoftware testing
Software testing
 
Software testing
Software testing   Software testing
Software testing
 
Q44098893
Q44098893Q44098893
Q44098893
 
@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""@#$@#$@#$"""@#$@#$"""
@#$@#$@#$"""@#$@#$"""
 
Testing and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and nTesting and test case generation by using fuzzy logic and n
Testing and test case generation by using fuzzy logic and n
 
A survey of software testing
A survey of software testingA survey of software testing
A survey of software testing
 
Importance of Testing in SDLC
Importance of Testing in SDLCImportance of Testing in SDLC
Importance of Testing in SDLC
 
Software testing q as collection by ravi
Software testing q as   collection by raviSoftware testing q as   collection by ravi
Software testing q as collection by ravi
 
Testing
TestingTesting
Testing
 

Destacado

Tycoon academic.v1.2014
Tycoon academic.v1.2014Tycoon academic.v1.2014
Tycoon academic.v1.2014bryanrimmer
 
My prayer booklet inner pages
My prayer booklet inner pagesMy prayer booklet inner pages
My prayer booklet inner pagessameh sameh
 
Accelerated Mobile Pages - WordCamp Kansas City
Accelerated Mobile Pages - WordCamp Kansas CityAccelerated Mobile Pages - WordCamp Kansas City
Accelerated Mobile Pages - WordCamp Kansas CityJeremy Green
 
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015Jeremy Green
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile PagesJeremy Green
 
Kankaan prosenttikulttuuri 080115
Kankaan prosenttikulttuuri 080115Kankaan prosenttikulttuuri 080115
Kankaan prosenttikulttuuri 080115KaupunginKangas
 
EXAMPLES OF PAIN POINTS RESOLVED
EXAMPLES OF PAIN POINTS RESOLVEDEXAMPLES OF PAIN POINTS RESOLVED
EXAMPLES OF PAIN POINTS RESOLVEDCindy Joice
 
Employee engagement overview of findings
Employee engagement overview of findingsEmployee engagement overview of findings
Employee engagement overview of findingsCindy Joice
 
Employee engagement project statement of work
Employee engagement project statement of workEmployee engagement project statement of work
Employee engagement project statement of workCindy Joice
 
Cindy Joice Resume for Director of Training and Development
Cindy Joice Resume for Director of Training and DevelopmentCindy Joice Resume for Director of Training and Development
Cindy Joice Resume for Director of Training and DevelopmentCindy Joice
 
BMC Remedy ITSM 8.0 What's New
BMC Remedy ITSM 8.0 What's NewBMC Remedy ITSM 8.0 What's New
BMC Remedy ITSM 8.0 What's NewBMC Software
 
2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers
2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers
2013-1 Machine Learning Lecture 03 - Naïve Bayes ClassifiersDongseo University
 
Tweets Classification using Naive Bayes and SVM
Tweets Classification using Naive Bayes and SVMTweets Classification using Naive Bayes and SVM
Tweets Classification using Naive Bayes and SVMTrilok Sharma
 
Sentiment analysis using naive bayes classifier
Sentiment analysis using naive bayes classifier Sentiment analysis using naive bayes classifier
Sentiment analysis using naive bayes classifier Dev Sahu
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsLinkedIn
 

Destacado (19)

Tycoon academic.v1.2014
Tycoon academic.v1.2014Tycoon academic.v1.2014
Tycoon academic.v1.2014
 
My prayer booklet inner pages
My prayer booklet inner pagesMy prayer booklet inner pages
My prayer booklet inner pages
 
Accelerated Mobile Pages - WordCamp Kansas City
Accelerated Mobile Pages - WordCamp Kansas CityAccelerated Mobile Pages - WordCamp Kansas City
Accelerated Mobile Pages - WordCamp Kansas City
 
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015
The Final 20%: Improving Craftsmanship in Web Development - WordCamp DFW 2015
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile Pages
 
Kankaan prosenttikulttuuri 080115
Kankaan prosenttikulttuuri 080115Kankaan prosenttikulttuuri 080115
Kankaan prosenttikulttuuri 080115
 
PARCC-ELA
PARCC-ELAPARCC-ELA
PARCC-ELA
 
EXAMPLES OF PAIN POINTS RESOLVED
EXAMPLES OF PAIN POINTS RESOLVEDEXAMPLES OF PAIN POINTS RESOLVED
EXAMPLES OF PAIN POINTS RESOLVED
 
Employee engagement overview of findings
Employee engagement overview of findingsEmployee engagement overview of findings
Employee engagement overview of findings
 
Employee engagement project statement of work
Employee engagement project statement of workEmployee engagement project statement of work
Employee engagement project statement of work
 
SafeСom - описание решения
SafeСom - описание решенияSafeСom - описание решения
SafeСom - описание решения
 
PaperCut presentation 2016
PaperCut presentation 2016PaperCut presentation 2016
PaperCut presentation 2016
 
Cindy Joice Resume for Director of Training and Development
Cindy Joice Resume for Director of Training and DevelopmentCindy Joice Resume for Director of Training and Development
Cindy Joice Resume for Director of Training and Development
 
BMC Remedy ITSM 8.0 What's New
BMC Remedy ITSM 8.0 What's NewBMC Remedy ITSM 8.0 What's New
BMC Remedy ITSM 8.0 What's New
 
2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers
2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers
2013-1 Machine Learning Lecture 03 - Naïve Bayes Classifiers
 
Tweets Classification using Naive Bayes and SVM
Tweets Classification using Naive Bayes and SVMTweets Classification using Naive Bayes and SVM
Tweets Classification using Naive Bayes and SVM
 
Naive Bayes Presentation
Naive Bayes PresentationNaive Bayes Presentation
Naive Bayes Presentation
 
Sentiment analysis using naive bayes classifier
Sentiment analysis using naive bayes classifier Sentiment analysis using naive bayes classifier
Sentiment analysis using naive bayes classifier
 
Study: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving CarsStudy: The Future of VR, AR and Self-Driving Cars
Study: The Future of VR, AR and Self-Driving Cars
 

Similar a Gui path oriented test generation algorithms paper

20050713 critical paths for gui regression testing
20050713 critical paths for gui regression testing20050713 critical paths for gui regression testing
20050713 critical paths for gui regression testingWill Shen
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...ijceronline
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing EssayDani Cox
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategyijseajournal
 
JUnit with_mocking
JUnit with_mockingJUnit with_mocking
JUnit with_mockingZeeshan Khan
 
20041221 gui testing survey
20041221 gui testing survey20041221 gui testing survey
20041221 gui testing surveyWill Shen
 
Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsQuontra Solutions
 
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...Journal For Research
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Riccardo Coppola
 
Ian Sommerville, Software Engineering, 9th EditionCh 8
Ian Sommerville,  Software Engineering, 9th EditionCh 8Ian Sommerville,  Software Engineering, 9th EditionCh 8
Ian Sommerville, Software Engineering, 9th EditionCh 8Mohammed Romi
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniquesersanbilik
 
A distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationA distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationeSAT Publishing House
 
Varalakhmi_Suresh_1
Varalakhmi_Suresh_1Varalakhmi_Suresh_1
Varalakhmi_Suresh_1varu suresh
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9Ian Sommerville
 
Chapter 3 SOFTWARE TESTING PROCESS
Chapter 3 SOFTWARE TESTING PROCESSChapter 3 SOFTWARE TESTING PROCESS
Chapter 3 SOFTWARE TESTING PROCESSst. michael
 

Similar a Gui path oriented test generation algorithms paper (20)

20050713 critical paths for gui regression testing
20050713 critical paths for gui regression testing20050713 critical paths for gui regression testing
20050713 critical paths for gui regression testing
 
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...IJCER (www.ijceronline.com) International Journal of computational Engineerin...
IJCER (www.ijceronline.com) International Journal of computational Engineerin...
 
Testing ppt
Testing pptTesting ppt
Testing ppt
 
Unit Testing Essay
Unit Testing EssayUnit Testing Essay
Unit Testing Essay
 
Software testing strategy
Software testing strategySoftware testing strategy
Software testing strategy
 
JUnit with_mocking
JUnit with_mockingJUnit with_mocking
JUnit with_mocking
 
20041221 gui testing survey
20041221 gui testing survey20041221 gui testing survey
20041221 gui testing survey
 
Automated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra SolutionsAutomated Software Testing Framework Training by Quontra Solutions
Automated Software Testing Framework Training by Quontra Solutions
 
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
DEPLOYMENT OF CALABASH AUTOMATION FRAMEWORK TO ANALYZE THE PERFORMANCE OF AN ...
 
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
Automated Generation, Evolution and Maintenance: a perspective for mobile GUI...
 
Ian Sommerville, Software Engineering, 9th EditionCh 8
Ian Sommerville,  Software Engineering, 9th EditionCh 8Ian Sommerville,  Software Engineering, 9th EditionCh 8
Ian Sommerville, Software Engineering, 9th EditionCh 8
 
Ka3517391743
Ka3517391743Ka3517391743
Ka3517391743
 
M018147883
M018147883M018147883
M018147883
 
Software Testing Tecniques
Software Testing TecniquesSoftware Testing Tecniques
Software Testing Tecniques
 
A distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automationA distinct approach for xmotif application gui test automation
A distinct approach for xmotif application gui test automation
 
Varalakhmi_Suresh_1
Varalakhmi_Suresh_1Varalakhmi_Suresh_1
Varalakhmi_Suresh_1
 
Ch8-Software Engineering 9
Ch8-Software Engineering 9Ch8-Software Engineering 9
Ch8-Software Engineering 9
 
Chapter 3 SOFTWARE TESTING PROCESS
Chapter 3 SOFTWARE TESTING PROCESSChapter 3 SOFTWARE TESTING PROCESS
Chapter 3 SOFTWARE TESTING PROCESS
 
Software testing
Software testingSoftware testing
Software testing
 
Testing concepts
Testing conceptsTesting concepts
Testing concepts
 

Último

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityIES VE
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsRavi Sanghani
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...Wes McKinney
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Strongerpanagenda
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Hiroshi SHIBATA
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkPixlogix Infotech
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...itnewsafrica
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 

Último (20)

[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Decarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a realityDecarbonising Buildings: Making a net-zero built environment a reality
Decarbonising Buildings: Making a net-zero built environment a reality
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Potential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and InsightsPotential of AI (Generative AI) in Business: Learnings and Insights
Potential of AI (Generative AI) in Business: Learnings and Insights
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
The Future Roadmap for the Composable Data Stack - Wes McKinney - Data Counci...
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better StrongerModern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
Modern Roaming for Notes and Nomad – Cheaper Faster Better Stronger
 
Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024Long journey of Ruby standard library at RubyConf AU 2024
Long journey of Ruby standard library at RubyConf AU 2024
 
React Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App FrameworkReact Native vs Ionic - The Best Mobile App Framework
React Native vs Ionic - The Best Mobile App Framework
 
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...Zeshan Sattar- Assessing the skill requirements and industry expectations for...
Zeshan Sattar- Assessing the skill requirements and industry expectations for...
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 

Gui path oriented test generation algorithms paper

  • 1. GUI Path Oriented Test Generation Algorithms Izzat Alsmadi Department of computer science North Dakota state university izzat.alsmadi@ndsu.edu (performance testing), how does the ABSTRACT system react if its environment does not Testing software manually is a labor behave as expected (robustness testing), intensive process. Efficient automated and how long can we rely on the correct testing can significantly reduce the functioning of the system (reliability overall cost of software development testing). and maintenance. Graphical User User interfaces have steadily Interfaces (GUI’s) code has some grown more rich, more user interactive characteristics that distinguish it from and more sophisticated over time. In the rest of the project code. Generating many applications one of the major test cases from the GUI code requires improvements that are suggested with different algorithms from those usually the new releases is to improve the user applied in test case generation. We interface. developed several GUI test generation Generating test cases can happen automated algorithms that do not need from requirements, design or the actual any user involvement and that ensure GUI implementation. Although it is test adequacy in the generated test cases. expected that those three should be The test cases are generated from an consistent and related, yet they have XML GUI model or tree that represents different levels of abstraction. the GUI structure. This work contributed Requirements and design are usually of a to the goal of developing fully GUI test high level of abstraction to generate automated framework. from them the test cases. On the other hand the task of generating the test cases General Terms from the GUI implementation model User interface, Automatic test case will be delayed until we implement the generation. GUI, which is usually occurred in the Keywords late implementation. We should not have any problems in delaying GUI testing Test Automation, GUI Testing, Test Case Generation. giving the fact that a tool will automate the generation and executing process. 1. INTRODUCTION We designed a tool in C# that uses Testing tries to answer the reflection to serialize the GUI control following questions(3): Does the system components or widgets. Certain control do what it should do, or does its properties are selected to be serialized. behavior comply with its functional These properties are relevant to the user specification (conformance testing), how interface. The application then uses the fast can the system perform its tasks XML file that is produced to build the GUI tree or the event flow graph and
  • 2. generate the test cases. Generating the appropriate test cases for these paths. test cases takes into consideration the These techniques can further be tree structure. Test cases are selected classified as static and dynamic. Static with the consideration of the techniques are often based on symbolic effectiveness of the selected test suit. We execution, whereas dynamic techniques will study the fault detection obtain the necessary data by executing effectiveness of our test case selections. the program under test. Goal-oriented The algorithms developed to techniques identify test cases covering a generate test cases from the GUI are selected goal such as a statement or novels. The two factors that affect the branch, irrespective of the path taken. suggested algorithms were first Intelligent techniques of automated test generating a valid test scenario in which case generation rely on complex each edge is a legal edge in the actual GUI computations to identify test cases. The model. The second factor is ensuring a real challenge to test generation is in the certain level of effectiveness on the generation of test cases that are capable generated test scenarios. of detecting faults in the IUT. We will The next section introduces the list some of the works related to this related work. Section 3 lists the goals of this research and describes the work done toward paper. Goga(2) introduce an algorithm those goals. Section 4 introduces in bases on probabilistic approach. It summary the developed GUI Auto tool. suggests combining the test generation Section 5 presents the conclusion and future and the test execution in one phase. work. Tretmans(3) studied test case generation algorithms for implementations that 2. RELATED WORK communicate via inputs and outputs, Software testing is about based on specifications using Labelled checking the correctness of the system Transition Systems (LTS). In MulSaw and confirming that the implementation project (4), the team use 2 conforms to the specifications. complementary frameworks, TestEra Conformance testing checks whether a and Korat for specification based test black box Implementation Under Test automation. To test a method, TestEra (IUT) behaves correctly with respect to and Korat automatically generate all its specification. The work in this paper non-isomorphic test cases from the is related to test case generation method's pre-condition and check its algorithms, automatic test case correctness using its post-condition as a generation and GUI test case generation test oracle. There are several papers in software testing. Several approaches related to this project. We have a similar have been proposed for test case approach that focus on GUI testing. As generation, mainly random, path- explained earlier, one of the goals of our oriented, goal-oriented and intelligent automatic generation of test scenarios is approaches (5) and domain testing to produce non-isomorphic test (which includes equivalence scenarios. We also check the results of partitioning, boundary-value testing, and the tests through comparing the output the category-partition method) (7). Path- results with event tables generated from oriented techniques generally use control the specification. Those event tables are flow information to identify a set of similar to the pre post condition event paths to be covered and generate the tables. Clay (6) presented an overview
  • 3. for model based software testing using for another tool that is capable of UML. Prior to test case generation, we producing small adequate test-sets that develop an XML model tree that can successfully verify that an represents the actual GUI that is implementation of the specification serialized from the implementation. Test produced is correct. cases are then generated from the XML model. Turner and Robson [8] have In the specific area of GUI test case suggested a new technique for the generation, Memon (14) has several validation of OOPS which emphasizes papers about automatically generating the interaction between the features and test cases from the GUI using an AI the object’s state. Each feature is planner, the process is not totally considered as a mapping from its starting automatic and requires the user decision or input states to its resultant or output to set current and goal states. The AI states affected by any stimuli. Tse, Chan, planner will find the best way to reach and Chen (9) and (11) introduce normal the goal states giving the current state. forms for an axiom based test case Another issue with respect to this selection strategy for Object oriented research is that it does not address the programs and equivalent sequences of problem of the huge number of states operations as an integration approach for that a GUI in even small application can object oriented test case generation. Orso have and hence may generate too many and Silva (10) introduce some of the test cases. The idea of defining the GUI challenges that Object Oriented state as the collection state of each technologies added to the process of control and that the change of a single software testing. Rajanna (12) studies property in one control will lead to a the impact and usefulness of automated new state is valid but is the reason for software testing tools during the producing the huge amount of possible maintenance phase of a software product GUI states. We considered in our by citing the pragmatic experiences research another alternative definition of gained from the maintenance of a a GUI state. By generate an XML tree critical, active, and very large that represent the GUI structure, we can commercial software product as a case define the GUI state as embedded in this study. It demonstrated that most of the tree. This means that if the tree structure error patterns reported during the is changed, which is something that can maintenance are due to the inadequate be automatically checked, then we test coverage, which is often the consider this as a GUI state change. outcome of manual testing, by relating Although we generate this tree the error patterns and the capability of dynamically at run time and then any various test data generators at detecting change in the GUI will be reflected in them. Stanford paper (13) is an example the current tree, yet this definition can be of using formal methods in defining the helpful in certain cases where we want specifications through object to trigger some events ( like regression specification tool that check for some testing ) if the GUI state is changed. properties like correctness. It is hoped Mikkolainen (15) discusses some issues that the application produced by this related to GUI test automation project should form the groundwork challenges. Alexander (16) and Haward present the concept of critical path
  • 4. testing for GUI test case generation. 7. Beizer, Boris. Software Testing Techniques. They define the critical paths as those Second Edition. New York, Van Nostrand Reinhold, 1990. paths that have “repeated” edges or 8. Turner, C.D. and D.J. Robson. The State- event in many test cases. The approach based Testing of Object-Oriented Programs. utilizes earlier manually created test Proceedings of the 1993 IEEE Conference on cases through a captureplay back tool. Software Maintenance (CSM- 93), Montreal, Although this is expected to be an Quebec, Canada, Sep. 1993. 9. T.H. Tse, F.T. Chan, H.Y. Chen. An Axiom- effective way of defining critical paths, Based Test Case Selection Strategy for Object- yet it is not automatically calculated. As Oriented Programs. University of Hong Kong, an alternative to the need of defining Hong Kong. 94. critical paths from run time, we define in 10. Orso, Alessandro, and Sergio Silva. Open one algorithm static critical paths issues and research directions in Object Oriented testing. Italy. AQUIS98. through the use of metric weights. The 11. T.H. Tse, F.T. Chan, H.Y. Chen. In Black metric weight is calculated by counting and White: An Integrated Approach to Object- all the children- or grand children for a Oriented Program Testing. University of Hong control. Other ways of defining critical Kong, Hong Kong. 96. paths is by measuring delay time during 12. Rajanna V. Automated Software Testing Tools and Their Impact on Software execution, or by manually locating Maintenance- An Experience. Tata Consultancy critical paths from specification. From Services. the specification a critical path can be a 13. Stanford, Matthew. Object specification tool path that is calling an external API, using VTL. Master dissertation. University of saving to or calling an external file. Sheffield. 2002. 14. Memon, Atef. Hierarchical GUI Test Case Generation Using Automated Planning. IEEE 3. GOALS AND APPROACHES transactions on software engineering. 2001. vol 27. 15. Mikkolainen, Markus. Automated 4.CONCLUSION AND FUTURE WORK Graphical User Interface Testing. 2006. www.cs.helsinki.fi/u/paakki/mikkolainen.pdf. 16. Alexander K, Ames and Haward Jie. 5. REFERENCES Critical Paths for GUI Regression Testing. 1. Pettichord, Bret. Homebrew test automation. www.cse.ucsc.edu/~sasha/proj/gui_testing. ThoughtWorks. Sep. 2004. pdf www.io.com/~wazmo/ papers/ homebrew_test_automation_200409.pdf. 2. Goga, N. A probabilistic coverage for on-the-y test generation algorithms. Jan. 2003. fmt.cs.utwente.nl/publications/files/ 398_covprob.ps.gz. 3. Jan Tretmans: Test Generation with Inputs, Outputs, and Quiescence. TACAS 1996: 127- 146. 4. Software Design Group. MIT. Computer Science and Artificial Intelligence Laboratory. 2006. http://sdg.csail.mit.edu/index.html. 5. Prasanna, M, S.N. Sivanandam R.Venkatesan. and R.Sundarrajan. A survey on automatic test case generation. Academic Open Internet Journal. Vol. 15. 2005. 6. Williams, Clay. Software testing and the UML. ISSRE99. 99. http://www.chillarege.com /fastabstracts/issre99/.