AI Chat Paper
Note: Please note that the following content is generated by AMiner AI. SciOpen does not take any responsibility related to this content.
{{lang === 'zh_CN' ? '文章概述' : 'Summary'}}
{{lang === 'en_US' ? '中' : 'Eng'}}
Chat more with AI
PDF (2.1 MB)
Collect
Submit Manuscript AI Chat Paper
Show Outline
Outline
Show full outline
Hide outline
Outline
Show full outline
Hide outline
Open Access

Behavior Model Construction for Client Side of Modern Web Applications

Weiwei WangJunxia GuoZheng LiRuilian Zhao( )
College of Information Science and Technology, Beijing University of Chemical Technology, Beijing 100029, China.
Show Author Information

Abstract

Most of the behavior models with respect to Web applications focus on sequencing of events, without regard for the changes of parameters or elements and the relationship between trigger conditions of events and Web pages. As a result, these models are not sufficient to effectively represent the dynamic behavior of the Web 2.0 application. Therefore, in this paper, to appropriately describe the dynamic behavior of the client side of Web applications, we define a novel Client-side Behavior Model (CBM) for Web applications and present a user behavior trace-based modeling method to automatically generate and optimize CBMs. To verify the effectiveness of our method, we conduct a series of experiments on six Web applications according to three types of user behavior traces. The experimental results show that our modeling method can construct CBMs automatically and effectively, and the CBMs built are more precise to represent the dynamic behavior of Web applications.

References

[1]
H. Javed, N. M. Minhas, A. Abbas, and F. M. Riaz, Model based testing for Web applications: A literature survey presented, Journal of Software, vol. 11, no. 4, pp. 347-361, 2016.
[2]
E. Habibi and S. H. Mirian-Hosseinabadi, Event-driven Web application testing based on model-based mutation testing, Information and Software Technology, vol. 67, pp. 159-179, 2015.
[3]
X. S. Dong, K. Patil, J. Mao, and Z. K. Liang, A comprehensive client-side behavior model for diagnosing attacks in Ajax applications, in Proc. 18th Int. Conf. Engineering of Complex Computer Systems, Singapore, 2013, pp. 177-187.
[4]
P. Liu and Z. N. Xu, MTTool: A tool for software modeling and test generation, IEEE Access, vol. 6, pp. 56222-56237, 2018.
[5]
S. Alimadadi, S. Sequeira, A. Mesbah, and K. Pattabiraman, Understanding JavaScript event-based interactions, in Proc. 36th Int. Conf. Software Engineering, Hyderabad, India, 2014, pp. 367-377.
[6]
A. Mesbah, Software analysis for the Web: Achievements and prospects, in IEEE 23rd Int. Conf. Software Analysis, Evolution, and Reengineering, Suita, Japan, 2016, pp. 91-103.
[7]
Y. F. Li, P. K. Das, and D. L. Dowe, Two decades of Web application testing: A survey of recent advances, Information Systems, vol. 43, pp. 20-54, 2014.
[8]
C. H. Liu, C. J. Wu, and H. M. Chen, Testing of AJAX-based Web applications using hierarchical state model, in IEEE 13th Int. Conf. e-Business Engineering, Macau, China, 2016, pp. 250-256.
[9]
A. Marchetto and P. Tonella, Using search-based algorithms for Ajax event sequence generation during testing, Empirical Software Engineering, vol. 16, no. 1, pp. 103-140, 2011.
[10]
S. Alimadadi, Understanding behavioural patterns in JavaScript, in Proc. 24th ACM SIGSOFT Int. Symp. Foundations of Software Engineering, Seattle, WA, USA, 2016, pp. 1076-1078.
[11]
X. F. Qi, Z. Y. Wang, J. Q. Mao, and P. Wang, Automated testing of Web applications using combinatorial strategies, Journal of Computer Science and Technology, vol. 32, no. 1, pp. 199-210, 2017.
[12]
K. Hossen, R. Groz, C. Oriat, and J. L. Richier, Automatic generation of test drivers for model inference of Web applications, in IEEE 6th Int. Conf. Software Testing, Verification and Validation Workshops, Luxembourg, Luxembourg, 2013, pp. 441-444.
[13]
A. Van Deursen, A. Mesbah, and A. Nederlof, Crawl-based analysis of Web applications: Prospects and challenges, Science of Computer Programming, vol. 97, pp. 173-180, 2015.
[14]
N. Walkinshaw, R. Taylor, and J. Derrick, Inferring extended finite state machine models from software executions, Empirical Software Engineering, vol. 21, no. 3, pp. 811-853, 2016.
[15]
M. Schur, A. Roth, and A. Zeller, Mining behavior models from enterprise Web applications, in Proc. 9th Joint Meeting on Foundations of Software Engineering, Saint Petersburg, Russia, 2013, pp. 422-432.
[16]
M. Schur, A. Roth, and A. Zeller, Mining workflow models from Web applications, IEEE Transactions on Software Engineering, vol. 41, no. 12, pp. 1184-1201, 2015.
[17]
R. A. Haraty, N. Mansour, and H. Zeitunlian, Metaheuristic algorithm for state-based software testing, Applied Artificial Intelligence, vol. 32, no. 2, pp. 197-213, 2018.
[18]
J. Mao, J. D. Bian, G. D. Bai, R. L. Wang, Y. Chen, Y. H. Xiao, and Z. K. Liang, Detecting malicious behaviors in JavaScript applications, IEEE Access, vol. 6, pp. 12 284-12 294, 2018.
[19]
W. W. Wang, J. X. Guo, Z. Li, and R. L. Zhao, EFSM-oriented minimal traces set generation approach for Web applications, in IEEE 42nd Annu. Computer Software and Applications Conf., Tokyo, Japan, 2018, pp. 12-21.
[20]
A. Mesbah, A. Van Deursen, and S. Lenselink, Crawling Ajax-based Web applications through dynamic analysis of user interface state changes, ACM Transactions on the Web, vol. 6, no. 1, pp. 1-30, 2012.
[21]
S. Joshi, N. Agrawal, R. Krishnapuram, and S. Negi, A bag of paths model for measuring structural similarity in Web documents, in Proc. 9th ACM SIGKDD Int. Conf. Knowledge Discovery and Data Mining, New York, NY, USA, 2003, pp. 577-582.
[22]
F. Ricca and P. Tonella, Analysis and testing of Web applications, in Proc. 23rd Int. Conf. Software Engineering, Toronto, Canada, 2001, pp. 25-34.
[23]
A. M. Fard, M. Mirzaaghaei, and A. Mesbah, Leveraging existing tests in automated test generation for Web applications, in Proc. 29th ACM/IEEE Int. Conf. Automated Software Engineering, Vasteras, Sweden, 2014, pp. 67-78.
[24]
S. Elbaum, S. Karre, and G. Rothermel, Improving Web application testing with user session data, in Proc. 25th Int. Conf. Software Engineering, Portland, OR, USA, 2003, pp. 49-59.
[25]
X. L. Xu, H. Jin, S. Wu, L. X. Tang, and Y. H. Wang, URMG: Enhanced CBMG-based method for automatically testing Web applications in the cloud, Tsinghua Science and Technology, vol. 19, no. 1, pp. 65-75, 2014.
[26]
A. Marchetto, P. Tonella, and F. Ricca, State-based testing of Ajax web applications, in Proc. 1st Int. Conf. on Software Testing Verification & Validation, Lillehammer, Norway, 2008, pp.121-130.
[27]
T. Gowda and C. A. Mattmann, Clustering Web pages based on structure and style similarity (application paper), in IEEE 17th Int. Conf. Information Reuse and Integration, Pittsburgh, PA, USA, 2016, pp. 175-180.
[28]
A. H. Kulkarni and B. M. Patil, Template extraction from heterogeneous Web pages with cosine similarity, International Journal of Computer Applications, vol. 87, no. 3, pp. 4-8, 2014.
[29]
B. Biswas, K. Jain, V. Mittal, and K. K. Shukla, Exploiting tree structure of a Web page for clustering, International Journal of Knowledge & Web Intelligence, vol. 1, no. 1/2, pp. 81-94, 2009.
[30]
M. E. Akpinar and Y. Yesilada, Vision based page segmentation algorithm: Extended and perceived success, in Proc. 13th Int. Conf. Web Engineering, Aalborg, Denmark, 2013, pp. 238-252.
[31]
T. T. Wei, Y. H. Lu, X. J. Li, and J. L. Liu, Web page segmentation based on the hough transform and vision cues, in 2015 Asia-Pacific Signal and Information Processing Association Annu. Summit and Conf., Hong Kong, China, 2015, pp. 865-872.
[32]
K. Androutsopoulos, D. Binkley, D. Clark, N. Gold, M. Harman, K. Lano, and Z. Li, Model projection: Simplifying models in response to restricting the environment, in Proc. 33rd Int. Conf. Software Engineering, New York, NY, USA, 2011, pp. 291-300.
[33]
J. Thomé, A. Gorla, and A. Zeller, Search-based security testing of Web applications, in Proc. 7th Int. Workshop on Search-Based Software Testing, Hyderabad, India, 2014, pp. 5-14.
[34]
N. Alshahwan and M. Harman, Automated Web application testing using search based software engineering, in Proc. 26th IEEE/ACM Int. Conf. Automated Software Engineering, Lawrence, KS, USA, 2011, pp. 3-12.
[35]
M. G. Li, L. Y. Li, and F. P. Nie, Ranking with adaptive neighbors, Tsinghua Science and Technology, vol. 22, no. 6, pp. 733-738, 2017.
[36]
S. Liang, Y. Zhang, B. Li, X. J. Guo, C. F. Jia, and Z. L. Liu, SecureWeb: Protecting sensitive information through the Web browser extension with a security token, Tsinghua Science and Technology, vol. 23, no. 5, pp. 526-538, 2018.
[37]
A. A. Andrews, J. Offutt, and R. T. Alexander, Testing Web applications by modeling with FSMs, Software & Systems Modeling, vol. 4, no. 3, pp. 326-345, 2005.
[38]
N. Alshahwan, M. Harman, and A. Marchetto, Crawlability metrics for web applications, in Proc. 5th Int. Conf. on Software Testing Verification and Validation, Montreal, Canada, 2012, pp. 151-160.
[39]
S. Mirshokraie, A. Mesbah, and K. Pattabiraman, JSEFT: Automated JavaScript unit test generation, in IEEE 8th Int. Conf. Software Testing, Verification and Validation, Graz, Austria, 2015, pp. 1-10.
[40]
C. Sung, M. Kusano, N. Sinha, and W. Chao, Static DOM event dependency analysis for testing Web applications, in Proc. 24th ACM SIGSOFT Int. Symp. Foundations of Software Engineering, Seattle, WA, USA, 2016, pp. 447-459.
[41]
H. V. Nguyen, C. Kästner, and T. N. Nguyen, Building call graphs for embedded client-side code in dynamic Web applications, in Proc. 22nd ACM SIGSOFT Int. Symp. Foundations of Software Engineering, New York, NY, USA, 2014, pp. 518-529.
[42]
B. Wang, B. B. Yin, and K. Y. Cai, Event handler tree model for GUI test case generation, in IEEE 40th Annu. Computer Software and Applications Conf., Atlanta, GA, USA, 2016, pp. 58-63.
[43]
D. Lorenzoli, L. Mariani, and M. Pezzè, Automatic generation of software behavioral models, in Proc. ACM/IEEE 30th Int. Conf. Software Engineering, Leipzig, Germany, 2008, pp. 501-510.
Tsinghua Science and Technology
Pages 112-134
Cite this article:
Wang W, Guo J, Li Z, et al. Behavior Model Construction for Client Side of Modern Web Applications. Tsinghua Science and Technology, 2021, 26(1): 112-134. https://doi.org/10.26599/TST.2019.9010043

1288

Views

51

Downloads

8

Crossref

N/A

Web of Science

7

Scopus

0

CSCD

Altmetrics

Received: 28 July 2019
Accepted: 28 August 2019
Published: 19 June 2020
© The author(s) 2021.

The articles published in this open access journal are distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/).

Return