Volume 16, Issue 2 (4-2024)                   itrc 2024, 16(2): 25-33 | Back to browse issues page


XML Print


Download citation:
BibTeX | RIS | EndNote | Medlars | ProCite | Reference Manager | RefWorks
Send citation to:

Abbasnezhad M, Jahangard Rafsanjani A, Milani Fard A. Deep Reinforcement Learning-based Exploration of Web Applications. itrc 2024; 16 (2) :25-33
URL: http://journal.itrc.ac.ir/article-1-604-en.html
1- Department of Computer Engineering Yazd University Yazd, Iran
2- Department of Computer Engineering Yazd University Yazd, Iran. , jahangard@yazd.ac.ir
3- Dept. of Computer Science, New York Inst. of Technology, Vancouver, BC, Canada.
Abstract:   (3571 Views)
—Web application (app) exploration is a crucial part of various analysis and testing techniques. However, the current methods are not able to properly explore the state space of web apps. As a result, techniques must be developed to guide the exploration in order to get acceptable functionality coverage for web apps. Reinforcement Learning (RL) is a machine learning method in which the best way to do a task is learned through trial and error, with the help of positive or negative rewards, instead of direct supervision. Deep RL is a recent expansion of RL that makes use of neural networks’ learning capabilities. This feature makes Deep RL suitable for exploring the complex state space of web apps. However, current methods provide fundamental RL. In this research, we offer DeepEx, a Deep RL-based exploration strategy for systematically exploring web apps. Empirically evaluated on seven open-source web apps, DeepEx demonstrated a 17% improvement in code coverage and a 16% enhancement in navigational diversity over the stateof-the-art RL-based method. Additionally, it showed a 19% increase in structural diversity. These results confirm the superiority of Deep RL over traditional RL methods in web app exploration.
Full-Text [PDF 749 kb]   (525 Downloads)    
Type of Study: Research | Subject: Information Technology

References
1. “January 2023 Web Server Survey | Netcraft News.” https://news.netcraft.com/archives/2023/01/27/january2023-web-server-survey.html (accessed Apr. 05, 2023).
2. “What is the Document Object Model?” https://www.w3.org/TR/WD-DOM/introduction.html (accessed Jan. 05, 2023).
3. A. Mesbah, A. van Deursen, and D. Roest, “InvariantBased Automatic Testing of Modern Web Applications,” IEEE Trans. Softw. Eng., vol. 38, no. 1, pp. 35–53, Jan. 2012, doi: 10.1109/TSE.2011.28.
4. A. Mesbah and M. R. Prasad, “Automated Cross-Browser Compatibility Testing,” in Proceedings of the 33rd International Conference on Software Engineering, 2011, pp. 561–570, doi: 10.1145/1985793.1985870.
5. S. Mirshokraie, A. Mesbah, and K. Pattabiraman, “Guided Mutation Testing for JavaScript Web Applications,” IEEE Trans. Softw. Eng., vol. 41, no. 5, pp. 429–444, May 2015, doi: 10.1109/TSE.2014.2371458.
6. A. Milani Fard, M. Mirzaaghaei, and A. Mesbah, “Leveraging Existing Tests in Automated Test Generation for Web Applications,” in Proceedings of the 29th ACM/IEEE International Conference on Automated Software Engineering, 2014, pp. 67–78, doi: 10.1145/2642937.2642991.
7. M. Biagiola, A. Stocco, F. Ricca, and P. Tonella, “Diversity-based Web Test Generation,” in Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, 2019, pp. 142–153, doi: 10.1145/3338906.3338970
8. M. Biagiola, A. Stocco, F. Ricca, and P. Tonella, “Dependency-Aware Web Test Generation,” in 2020 IEEE 13th International Conference on Software Testing, Validation and Verification (ICST), Oct. 2020, pp. 175–185, doi: 10.1109/ICST46399.2020.00027.
9. A. Mesbah, A. van Deursen, and S. Lenselink, “Crawling Ajax-Based Web Applications through Dynamic Analysis of User Interface State Changes,” ACM Trans. Web, vol. 6, no. 1, Mar. 2012, doi: 10.1145/2109205.2109208.
10. M. Mirzaaghaei and A. Mesbah, “DOM-Based Test Adequacy Criteria for Web Applications,” in Proceedings of the 2014 International Symposium on Software Testing and Analysis, 2014, pp. 71–81, doi: 10.1145/2610384.2610406.
11. A. van Deursen, A. Mesbah, and A. Nederlof, “Crawl-based analysis of web applications: Prospects and challenges,” Sci. Comput. Program., vol. 97, pp. 173–180, 2015, doi: https://doi.org/10.1016/j.scico.2014.09.005.
12. A. M. Fard and A. Mesbah, “Feedback-directed exploration of web applications to derive test models,” in 2013 IEEE 24th International Symposium on Software Reliability Engineering (ISSRE), Nov. 2013, pp. 278–287, doi: 10.1109/ISSRE.2013.6698880.
13. X.-F. Qi, Y.-L. Hua, P. Wang, and Z.-Y. Wang, “Leveraging keyword-guided exploration to build test models for web applications,” Inf. Softw. Technol., vol. 111, pp. 110–119, 2019, doi: https://doi.org/10.1016/j.infsof.2019.03.016.
14. C.-H. Liu, W.-K. Chen, and C.-C. Sun, “GUIDE: an interactive and incremental approach for crawling Web applications,” J. Supercomput., Mar. 2018, doi: 10.1007/s11227-018-2335-4
15. S. Sherin, A. Muqeet, M. U. Khan, and M. Z. Iqbal, “QExplore: An exploration strategy for dynamic web applications using guided search,” J. Syst. Softw., p. 111512, 2022, doi: https://doi.org/10.1016/j.jss.2022.111512.

Add your comments about this article : Your username or Email:
CAPTCHA

Send email to the article author


Rights and permissions
Creative Commons License This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.