Scenario Testing of AngularJS-Based Single Page Web Applications

  • Gefei ZhangEmail author
  • Jianjun Zhao
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11609)


AngularJS is a popular framework for single page web applications. Due to separation of programming logic and GUI, the data and control flow in AngularJS applications are usually hard to track. We propose a white-box method for first integrating the separate concerns into one interaction diagram, which contains the overall data and control flow of a program, and then separating user interactions from each other. With the help of the interactions, our method helps to achieve a better understanding of AgnularJS-based single page web applications, and moreover provides novel test coverage criteria for them.


  1. 1.
    Alimadadi, S., Mesbah, A., Pattabiraman, K.: Hybrid DOM-sensitive change impact analysis for JavaScript. In: Proceedings of the 29th European Conference on Object-Oriented Programming (ECOOP 2015), pp. 321–345 (2015)Google Scholar
  2. 2.
    Dhok, M., Ramanathan, M.K., Sinha, N.: Type-aware concolic testing of JavaScript programs, pp. 168–179. ACM (2016)Google Scholar
  3. 3.
    Google. AngularJS.
  4. 4.
    Jensen, S.H., Madsen, M., Møller, A.: Modeling the HTML DOM and browser API in static analysis of JavaScript Web Applications. In: Proceedings of the 19th ACM SIGSOFT Symposium Foundations of Software Engineering and 13th European Software Engineering Conference (FSE/ESEC 2011), pp. 59–69. ACM (2011)Google Scholar
  5. 5.
    Materne, D.: Interaktionsanalayse von AngularJS-Programmen. Master’s thesis, Hochschule für Technik und Wirtschaft Berlin (2018). (in German)Google Scholar
  6. 6.
    Mesbah, A.: Advances in testing JavaScript-based Web Applications. Adv. Comput. 97, 201–235 (2015)CrossRefGoogle Scholar
  7. 7.
    Mirshokraie, S., Mesbah, A., Pattabiraman, K.: JSEFT: automated Javascript unit test generation. In: 8th IEEE International Conference on Software Testing, Verification and Validation, ICST 2015, pp. 1–10. IEEE Computer Society (2015)Google Scholar
  8. 8.
  9. 9.
    Ocariza Jr., F.S., Pattabiraman, K., Mesbah, A.: Detecting inconsistencies in JavaScript MVC applications. In: Proceedings of the 37th International Conference on Software Engineering (ICSE 2015), vol. 1, pp. 325–335. IEEE Computer Society (2015)Google Scholar
  10. 10.
    Park, C., Won, S., Jin, J., Ryu, S.: Static analysis of JavaScript Web Applications in the wild via practical DOM modeling. In: Proceedings of the 30th International Conference on Automated Software Engineering (ASE 2015), pp. 552–562. IEEE Computer Society (2015)Google Scholar
  11. 11.
    Sun, K., Ryu, S.: Analysis of JavaScript programs: challenges and research trends. ACM Comput. Surv. 50(4), 59:1–59:34 (2017)CrossRefGoogle Scholar
  12. 12.
    van Deursen, A.: Testing Web Applications with state objects. Comm. ACM 58(8), 36–43 (2015)CrossRefGoogle Scholar
  13. 13.

Copyright information

© Springer Nature Switzerland AG 2020

Authors and Affiliations

  1. 1.Hochschule für Technik und Wirtschaft BerlinBerlinGermany
  2. 2.Kyushu UniversityFukuokaJapan

Personalised recommendations