Abstract
Software testing being one of the major phases of the software development life cycle is critical in delivering reliable software products. Traditional manual GUI testing has severe limitations like insufficient test coverage, labor intensiveness, complexity involved and cost ineffectiveness. “How much testing is enough or sufficient?” still remains a challenging question. Coverage analysis helps to guide the test engineers regarding test coverage and is used extensively to determine the effectiveness of selected testing methodology. The problems mentioned above related to manual GUI testing prompted the need for automation of GUI testing and coverage analysis. With the rapid emergence of GUI based context free applications, automated testing tools seems less effective. Recently, it has been learnt that concurrent and distributed machines based cluster can be used to reduce the required effort to test GUI in context of time. Proposed system use two different evolutionary algorithms concurrently to gain multiple objectives, based on the fitness functions of maximization of GUI test path coverage (measured as the number of events in an event sequence tested by a particular test case) and simultaneously minimizing the number of test cases. For coverage analysis, two of the very well-known multi objective algorithms; NSGA II and MOPSO from evolutionary domain have been employed. Experiments results of coverage analysis show that accuracy to the tune of 85% was achieved in MOPSO and NSGA II. This high level of accuracy is an indicator of usefulness of proposed fitness function. Both algorithms execute more than 90% of test paths.
Similar content being viewed by others
References
Ng, S.P., Murnane, T., Reed, K., Grant, D., Chen, T.Y.: A preliminary survey on software testing practices in Australia. Proceedings 2004, 116–125 (2004). doi:10.1109/ASWEC.2004.1290464
Emer, M.C.F.P., Vergilio, S.R.: Selection and evaluation of test data based on genetic programming. Softw. Qual. J. 11(2), 167–186 (2003)
Hackner, D.R., Memon, A.M.: Test case generator for GUITAR. In: Companion of the 30th International Conference on Software Engineering. ACM, New York (2008)
Impromptu 2.1. http://www.apple.com/downloads/macosx/development_tools/impromptu.html. Accessed 8 March 2015
Rauf, A., Aleisa, E.A.: PSO based automated test coverage analysis of event driven systems. Intell. Autom. Soft Comput. 21(4), 491–502 (2015)
Rauf, A., et al.: Evolutionary based automated coverage analysis for GUI testing. In: International Conference on Contemporary Computing. Springer, Berlin (2010)
Coello, C.A.C.: Evolutionary multi-objective optimization: a historical view of the field. IEEE Comput. Intell. Mag. 1(1), 28–36 (2006)
Wegener, J., et al.: Testing real-time systems using genetic algorithms. Softw. Qual. J. 6(2), 127–135 (1997)
Korel, B.: Automated software test data generation. IEEE Trans. Softw. Eng. 16(8), 870–879 (1990)
McMinn, P., et al.: The species per path approach to search based test data generation. In: Proceedings of the 2006 International Symposium on Software Testing and Analysis. ACM, New York (2006)
Tonella, P.: Evolutionary testing of classes. In: ACM SIGSOFT Software Engineering Notes, vol. 29, p. 4. ACM, New York (2004)
Pargas, R.P., Harrold, M.J., Peck, R.R.: Test-data generation using genetic algorithms. Softw. Test. Verif. Reliab. 9(4), 263–282 (1999)
Kasik, D.J., George, H.G.: Toward automatic generation of novice user test scripts. In: Proceedings of the SIGCHI Conference on Human Factors in Computing Systems. ACM, New York (1996)
White, L., Almezen, H.: Generating test cases for GUI responsibilities using complete interaction sequences. In: Proceedings of the 11th International Symposium on Software Reliability Engineering, 2000. ISSRE 2000. IEEE, New York (2000)
Memon, A.M., Xie, Q.: Studying the fault-detection effectiveness of GUI test cases for rapidly evolving software. IEEE Trans. Softw. Eng. 31(10), 884–896 (2005)
Memon, A.M., Pollack, M.E., Soffa, M.L.: Hierarchical GUI test case generation using automated planning. IEEE Trans. Softw. Eng. 27(2), 144–155 (2001)
Memon, A.M.: An event-flow model of GUI-based applications for testing. Softw. Test. Verif. Reliab. 17(3), 137–158 (2007)
Windisch, A., Wappler, S., Wegener, J.: Applying particle swarm optimization to software testing. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation. ACM, New York (2007)
Hla, K.H.S., Choi, Y.S., Park, J.S.: Applying particle swarm optimization to prioritizing test cases for embedded real time software retesting. In: IEEE 8th International Conference on Computer and Information Technology Workshops, 2008. CIT Workshops 2008. IEEE, New York (2008)
Singla, T., Kumar, A., Garhwal, S.: Reducing mutation testing endeavor using the similar conditions for the same mutation operators occurs at different locations. Appl. Math. 8(5), 2389–2393 (2014)
Lu, Y., et al.: Development of an improved GUI automation test system based on event-flow graph. In: 2008 International Conference on Computer Science and Software Engineering, vol. 2. IEEE, New York (2008)
Lakhotia, K., Harman, M., McMinn, P.: A multi-objective approach to search-based test data generation. In: Proceedings of the 9th Annual Conference on Genetic and Evolutionary Computation. ACM, New York (2007)
Yoo, S., Harman, M.: Pareto efficient multi-objective test case selection. In: Proceedings of the 2007 International Symposium on Software Testing and Analysis. ACM, New York (2007)
Langdon, W.B., Harman, M., Jia, Y.: Multi objective higher order mutation testing with genetic programming. In: Testing: Academic and Industrial Conference-Practice and Research Techniques, 2009. TAIC PART’09. IEEE, New York (2009)
Rauf, A., et al.: Automated GUI test coverage analysis using GA. In: 2010 Seventh International Conference on Information Technology: New Generations (ITNG). IEEE, New York (2010)
Armada Assault ETC. http://www.mofunzone.com/online_games/armada_assault.shtml. Accessed 13 June 2017
Coello, C.A.C., Lamont, G.B.: Applications of Multi-objective Evolutionary Algorithms. World Scientific, Singapore (2004)
Coello, C.A.C.: Theoretical and numerical constraint-handling techniques used with evolutionary algorithms: a survey of the state of the art. Comput. Methods Appl. Mech. Eng. 191(11), 1245–1287 (2002)
David, A.V.V.: Multiobjective evolutionary algorithms: classifications, analyses, and new innovations. PhD dissertation, Air Force Institute of Technology, Wright Patterson AFB, OH. Advisor(s) Gary B. Lamont. AAI9928483
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Rauf, A., Ramzan, M. Parallel testing and coverage analysis for context-free applications. Cluster Comput 21, 729–739 (2018). https://doi.org/10.1007/s10586-017-1000-7
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-017-1000-7