Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.



Published on

Published in: Technology, Education
  • Be the first to comment


  1. 1. A metaheuristic approach to automatictest case generation for applicationwith GUIBelhassen Ouerghi
  2. 2. The metaheuristic methods
  3. 3. The problem
  4. 4. The problem● Users love features and options.● The majority of software application employ a graphical userinterface(GUI).● The GUI are becoming more and more complex (moreoptions, more features).● Testing a GUI taking into consideration(fonctionality,securitiy, usability…) is laborious and resourceintensive.
  5. 5. New generation of GUI
  6. 6. Old school GUI
  7. 7. The solution
  8. 8. The solution● Automating the process of testing.● Scripting and capture and reply is the most commontechnique in the industry.
  9. 9. Is it really a good solution?
  10. 10. Why?● Actions need often to be in specific order.● Actions have to appear in the context of certain otheractions to provoke faults.● Tester have to compile the entire test suite.● Slight changes to the GUI of SUT will break tests. We do have obviously a problem to generateautomatically test sequences.
  11. 11. The metaheuristic approach● The problem of generating test sequences to GUIs willbe treated as an optimization problem.● Ant colony optimization algorithm is employed.● New metric called MCT(Maximum Call Tree) is usedto search fault-sensitive test cases.
  12. 12. How ant colony optimize their way
  13. 13. The event flow graph (EFG)● Since many sequence are infeasible like this one:s=(Edit, Paste) it is helpful to employ a model of theGUI.
  14. 14. The maximum call tree criterion (MCT)● Choosing the right criteria is critical for finding faults.● Generating sequences that induce a large call treewithin the SUT.● Sequences are generated online (executing the SUT)therefore no need for a model of the GUI.● Don‘t have to deal with the infeasibility.
  15. 15. The maximum call tree criterion (MCT)
  16. 16. Merging thread
  17. 17. Test environment requierment● To be able to scan the GUI of the SUT to obtain allvisible widgets and their properties(size, position,focus…).● To derive a set of interesting actions(visible, enabledbutton, is clickable…).● To give these actions unique name.● To execute sequences of these actions.
  18. 18. How sequences are generated
  19. 19. The framework
  20. 20. RandomVs ACO● K is the number of top-K sequences in everygeneration.● α is the pheromone evaporation rate.● ρ is the probability parameter for the pseudoproportional random selection rule.
  21. 21. ConclusionWe used the ACO optimization algorithm directed by MCTto automatically generate the input sequence for applicationwith GUI.Since we forgo the application of GUI model there is norisk of generating infeasible sequences.
  22. 22. References●● „A Metaheuristic Approach to Test sequence Generationfor Applications with a GUI“ paper from SebastianBauersfeld, Stefan Wappler, Joachim Wegner.●
  23. 23. A questionIs testing a GUI really an optimization problem?Are we searching or planning when we test?Find it out at 19.06.2013