Pidgin Crasher: Searching for Minimised Crashing GUI Event Sequences

  • Haitao Dan
  • Mark Harman
  • Jens Krinke
  • Lingbo Li
  • Alexandru Marginean
  • Fan Wu
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8636)

Abstract

We present a search based testing system that automatically explores the space of all possible GUI event interleavings. Search guides our system to novel crashing sequences using Levenshtein distance and minimises the resulting fault-revealing UI sequences in a post-processing hill climb. We report on the application of our system to the SSBSE 2014 challenge program, Pidgin. Overall, our Pidgin Crasher found 20 different events that caused 2 distinct kinds of bugs, while the event sequences that caused them were reduced by 84% on average using our minimisation post processor.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Amalfitano, D., Fasolino, A.R., Tramontana, P.: Reverse Engineering Finite State Machines from Rich Internet Applications. In: 15th Working Conference on Reverse Engineering (October 2008)Google Scholar
  2. 2.
    Amalfitano, D., Fasolino, A.R., Tramontana, P., De Carmine, S., Imparato, G.: A toolset for GUI testing of Android applications. In: 28th IEEE International Conference on Software Maintenance (ICSM) (September 2012)Google Scholar
  3. 3.
    Amalfitano, D., Fasolino, A.R., Tramontana, P., De Carmine, S., Memon, A.M.: Using GUI ripping for automated testing of Android applications. In: 27th IEEE/ACM International Conference on Automated Software Engineering (2012)Google Scholar
  4. 4.
    Belli, F., Budnik, C.J., White, L.: Event-based modelling, analysis and testing of user interactions: Approach and case study. Software Testing, Verification and Reliability 16(1) (March 2006)Google Scholar
  5. 5.
    Gross, F., Fraser, G., Zeller, A.: EXSYST: Search-based GUI testing. In: 34th International Conference on Software Engineering (June 2012)Google Scholar
  6. 6.
    Harman, M., McMinn, P., Shahbaz, M., Yoo, S.: A comprehensive survey of trends in oracles for software testing. Technical Report Research Memoranda CS-13-01, Department of Computer Science, University of Sheffield (2013)Google Scholar
  7. 7.
    Jensen, C.S., Prasad, M.R., Møller, A.: Automated testing with targeted event sequence generation. In: International Symposium on Software Testing and Analysis (2013)Google Scholar
  8. 8.
    Langdon, W.B., Harman, M.: Optimising existing software with genetic programming. IEEE Transactions on Evolutionary Computation (TEVC) (to appear, 2014)Google Scholar
  9. 9.
    Memon, A.M.: GUI testing: Pitfalls and process. Computer 35(8) (August 2002)Google Scholar
  10. 10.
    Memon, A.M., Xie, Q.: Studying the fault-detection effectiveness of GUI test cases for rapidly evolving software. IEEE Transactions on Software Engineering 31(10) (October 2005)Google Scholar
  11. 11.
    Pidgin, the universal chat client, http://www.pidgin.im/ (accessed in 2014)
  12. 12.
    Tan, L., Liu, C., Li, Z., Wang, X., Zhou, Y., Zhai, C.: Bug characteristics in open source software. Empirical Software Engineering (June 2013)Google Scholar
  13. 13.
    Yoo, S., Harman, M.: Test data regeneration: Generating new test data from existing test data. Software Testing, Verification and Reliability 22(3) (May 2012)Google Scholar

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Haitao Dan
    • 1
  • Mark Harman
    • 1
  • Jens Krinke
    • 1
  • Lingbo Li
    • 1
  • Alexandru Marginean
    • 1
  • Fan Wu
    • 1
  1. 1.CREST, Department of Computer ScienceUniversity College LondonLondonUK

Personalised recommendations