An approach to automatic input sequence generation for GUI testing using ant colony optimization
Proceedings of the 13th annual conference companion on Genetic and evolutionary computation
Automated GUI refactoring and test script repair
Proceedings of the First International Workshop on End-to-End Test Script Engineering
A metaheuristic approach to test sequence generation for applications with a GUI
SSBSE'11 Proceedings of the Third international conference on Search based software engineering
Search-based system testing: high coverage, no false alarms
Proceedings of the 2012 International Symposium on Software Testing and Analysis
Finding errors in multithreaded GUI applications
Proceedings of the 2012 International Symposium on Software Testing and Analysis
GUITest: a Java library for fully automated GUI robustness testing
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
Understanding myths and realities of test-suite evolution
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Automatically repairing broken workflows for evolving GUI applications
Proceedings of the 2013 International Symposium on Software Testing and Analysis
TestEvol: a tool for analyzing test-suite evolution
Proceedings of the 2013 International Conference on Software Engineering
Automated testing of GUI applications: models, tools, and controlling flakiness
Proceedings of the 2013 International Conference on Software Engineering
GUITAR: an innovative tool for automated testing of GUI-driven software
Automated Software Engineering
Hi-index | 0.00 |
Recent advances in automated functional testing of Graphical User Interfaces (GUIs) rely on deriving graph models that approximate all possible sequences of events that may be executed on the GUI, and then use the graphs to generate test cases (event sequences) that achieve a specified coverage goal. However, because these models are only approximations of the actual event flows, the generated test cases may suffer from problems of infeasibility, i.e., some events may not be available for execution causing the test case to terminate prematurely. In this paper we develop a method to automatically repair GUI test suites, generating new test cases that are feasible. We use a genetic algorithm to evolve new test cases that increase our test suite's coverage while avoiding infeasible sequences. We experiment with this algorithm on a set of synthetic programs containing different types of constraints and for test sequences of varying lengths. Our results suggest that we can generate new test cases to cover most of the feasible coverage and that the genetic algorithm outperforms a random algorithm trying to achieve the same goal in almost all cases.