WEB TEST CASE GENERATION WITH TIME OPTIMIZATION USING GRAPH DECOMPOSITION

Authors

  • Lana Kamal Mohammed Department of Software and Informatics Engineering, College of Engineering, Salahaddin University, Erbil, Kurdistan Region, Iraq
  • Moayad Y. Potrus Department of Information Technology, College of Engineering and Computer Science, Lebanese French University, Kurdistan Region, Iraq

DOI:

https://doi.org/10.25212/lfu.qzj.9.4.54

Keywords:

Graph Theory, web application testing (WAT), dynamic website, test case generation, software testing, Automated testing, Automated model-based testing

Abstract

Web application testing is an essential process in software development that has become increasingly important in recent years because of the growing complexity and dynamic nature of web applications, in addition to the need to ensure their quality in a highly competitive market. The dynamic nature of web applications is one among the major difficulties in the field of testing web applications. Also, it is crucial to strike a balance between time to market and software quality. Furthermore, in an era of rapid technological advancement, web application testing remains an ongoing and evolving challenge for developers. Thus, this research proposes an approach to optimize the time of the testing phase in the software development life cycle. Within this work, the web application is represented as a graph model, which is then decomposed to facilitate the automatic generation of test cases. And presents an updated graph decomposition algorithm and demonstrates its usefulness in partitioning the graph models of web applications under test. Based on the results, applying the suggested work can reduce the testing time by ~90%. This significant time-saving potential not only accelerates the development lifecycle but also enables developers to allocate more resources to comprehensive testing, leading to more robust and reliable web applications

Downloads

Download data is not yet available.

References

Achkar, H. (2010). Model based testing of web applications. Proceedings of 9th Annual STANZ, Australia.

Artzi, S., Kiezun, A., Dolby, J., Tip, F., Dig, D., Paradkar, A., & Ernst, M. D. (2010). Finding Bugs in Web Applications Using Dynamic Test Generation and Explicit-State Model Checking. IEEE Transactions on Software Engineering, 36(4), 474–494. https://doi.org/10.1109/TSE.2010.31

Arumugam, S., Hamid, I., & Abraham, V. M. (2013). Decomposition of graphs into paths and cycles. Journal of Discrete Mathematics, 2013.

Bang-Jensen, J., & Gutin, G. Z. (2008). Digraphs: Theory, algorithms and applications. Springer Science & Business Media.

Benedikt, M., Freire, J., & Godefroid, P. (2002). VeriWeb: Automatically Testing Dynamic Web Sites.

Blondel, V. D., Guillaume, J.-L., Lambiotte, R., & Lefebvre, E. (2008). Fast unfolding of communities in large networks. Journal of Statistical Mechanics: Theory and Experiment, 2008(10), P10008.

de Moura, J. L., Charao, A. S., Lima, J. C. D., & de Oliveira Stein, B. (2017). Test case generation from BPMN models for automated testing of Web-based BPM applications. 2017 17th International Conference on Computational Science and Its Applications (ICCSA), 1–7. https://doi.org/10.1109/ICCSA.2017.7999652

Dearle, A. (2007). Software deployment, past, present and future. Future of Software Engineering (FOSE’07), 269–284.

Di Lucca, G. A., & Di Penta, M. (2003). Considering browser interaction in Web application testing. Fifth IEEE International Workshop on Web Site Evolution, 2003. Theme: Architecture. Proceedings., 74–81. https://doi.org/10.1109/WSE.2003.1234011

Draheim, D., Lutteroth, C., & Weber, G. (2005). A Source Code Independent Reverse Engineering Tool for Dynamic Web Sites. Ninth European Conference on Software Maintenance and Reengineering, 168–177. https://doi.org/10.1109/CSMR.2005.4

Elbaum, S., Rothermel, G., Karre, S., & Fisher II, M. (2005). Leveraging user-session data to support Web application testing. IEEE Transactions on Software Engineering, 31(3), 187–202. https://doi.org/10.1109/TSE.2005.36

Fewster, M., & Graham, D. (1999). Software test automation. Addison-Wesley Reading.

Freeman, H. (2002). Software testing. IEEE Instrumentation & Measurement Magazine, 5(3), 48–50.

Girvan, M., & Newman, M. E. (2002). Community structure in social and biological networks. Proceedings of the National Academy of Sciences, 99(12), 7821–7826.

Jamil, M. A., Arif, M., Abubakar, N. S. A., & Ahmad, A. (2016). Software Testing Techniques: A Literature Review. 2016 6th International Conference on Information and Communication Technology for The Muslim World (ICT4M), 177–182. https://doi.org/10.1109/ICT4M.2016.045

Karger, D. R. (1993). Global Min-cuts in RNC, and Other Ramifications of a Simple Min-Cut Algorithm. Soda, 93, 21–30.

Kassab, M., DeFranco, J. F., & Laplante, P. A. (2017). Software testing: The state of the practice. IEEE Software, 34(5), 46–52.

Kasurinen, J., Taipale, O., & Smolander, K. (2010). Software test automation in practice: Empirical observations. Advances in Software Engineering, 2010.

Kernighan, B. W., & Lin, S. (1970). An efficient heuristic procedure for partitioning graphs. The Bell System Technical Journal, 49(2), 291–307.

Khan, F. N., Ali, A., Hussain, I., Sarwar, N., & Rafique, H. (2019). Repairing Broken Links Using Naive Bayes Classifier. In I. S. Bajwa, F. Kamareddine, & A. Costa (Eds.), Intelligent Technologies and Applications (pp. 461–472). Springer. https://doi.org/10.1007/978-981-13-6052-7_40

Khot, T. (2017). Parallelization in Python. XRDS: Crossroads, The ACM Magazine for Students, 23(3), 56–58.

Kit, E., & Finzi, S. (1995). Software testing in the real world: Improving the process. ACM Press/Addison-Wesley Publishing Co.

Lei Xu, Baowen Xu, Zhenqiang Chen, Jixiang Jiang, & Huowang Chen. (2003). Regression testing for Web applications based on slicing. Proceedings 27th Annual International Computer Software and Applications Conference. COMPAC 2003, 652–656. https://doi.org/10.1109/CMPSAC.2003.1245411

Miller, E. (2005). Website testing. Companion Paper of “The Web Site Quality Challenge”. Proceedings of QW 1998 Conference. Https://Bit. Ly/2WIj1vp [Accessed: 15 May 2020].

Nagowah, L., & Kora-Ramiah, K. (2017). Automated complete test case coverage for web based applications. 2017 International Conference on Infocom Technologies and Unmanned Systems (Trends and Future Directions) (ICTUS), 383–390. https://doi.org/10.1109/ICTUS.2017.8286037

Nass, M., Alégroth, E., Feldt, R., Leotta, M., & Ricca, F. (2023). Similarity-based Web Element Localization for Robust Test Automation. ACM Transactions on Software Engineering and Methodology, 32(3), 1–30. https://doi.org/10.1145/3571855

Ng, A., Jordan, M., & Weiss, Y. (2001). On spectral clustering: Analysis and an algorithm. Advances in Neural Information Processing Systems, 14.

Paige, M. R. (1977). On partitioning program graphs. IEEE Transactions on Software Engineering, 6, 386–393.

Panthi, V., & Mohapatra, D. P. (2017). An approach for dynamic web application testing using MBT. International Journal of System Assurance Engineering and Management, 8(S2), 1704–1716. https://doi.org/10.1007/s13198-017-0646-0

Potrus, M. Y. (2020). GENERATING MODELS OF SOFTWARE SYSTEMS DURING EXPLORATORY. Zanco Journal of Pure and Applied Sciences, 32(4), 12–21.

Ricca, F., & Tonella, P. (2003). Using clustering to support the migration from static to dynamic web pages. 11th IEEE International Workshop on Program Comprehension, 2003., 207–216.

Sampath, S., & Bryce, R. C. (2012). Improving the effectiveness of test suite reduction for user-session-based testing of web applications. Information and Software Technology, 54(7), 724–738. https://doi.org/10.1016/j.infsof.2012.01.007

Setiani, N., Ferdiana, R., Santosa, P. I., & Hartanto, R. (2019). Literature review on test case generation approach. Proceedings of the 2nd International Conference on Software Engineering and Information Management, 91–95.

Tanida, H., Prasad, M. R., Rajan, S. P., & Fujita, M. (2013). Automated System Testing of Dynamic Web Applications. In M. J. Escalona, J. Cordeiro, & B. Shishkov (Eds.), Software and Data Technologies (Vol. 303, pp. 181–196). Springer Berlin Heidelberg. https://doi.org/10.1007/978-3-642-36177-7_12

Tomlinson, K. (2020, March 15). Site Graph. Kiran Tomlinson. https://www.cs.cornell.edu/~kt/post/site-graph/

Tonella, P., & Ricca, F. (2002). Dynamic model extraction and statistical analysis of Web applications. Proceedings. Fourth International Workshop on Web Site Evolution, 43–52. https://doi.org/10.1109/WSE.2002.1134088

Wen, R. B. (2001). URL-driven automated testing. Proceedings Second Asia-Pacific Conference on Quality Software, 268–272. https://doi.org/10.1109/APAQS.2001.990029

Yahaya, J. H., Ibrahim, A. A., & Deraman, A. (2017). Software Process Model for Dynamic Website Development towards Quality Product. Journal of Telecommunication, Electronic and Computer Engineering (JTEC), 9(3–3), Article 3–3.

Yandrapally, R., & Mesbah, A. (2023). Fragment-Based Test Generation For Web Apps. IEEE Transactions on Software Engineering, 49(3), 1086–1101. https://doi.org/10.1109/TSE.2022.3171295

Yuill, S., & Halpin, H. (2006). Python. Python Releases Wind, 24.

Zou, Y., Chen, Z., Zheng, Y., Zhang, X., & Gao, Z. (2014). Virtual DOM coverage for effective testing of dynamic web applications. Proceedings of the 2014 International Symposium on Software Testing and Analysis, 60–70. https://doi.org/10.1145/2610384.2610399

Zou, Y., Fang, C., Chen, Z., Zhang, X., & Zhao, Z. (2013). A Hybrid Coverage Criterion for Dynamic Web Testing.

Downloads

Published

2024-12-30

How to Cite

Lana Kamal Mohammed, & Moayad Y. Potrus. (2024). WEB TEST CASE GENERATION WITH TIME OPTIMIZATION USING GRAPH DECOMPOSITION . QALAAI ZANIST JOURNAL, 9(4), 1417–1447. https://doi.org/10.25212/lfu.qzj.9.4.54

Issue

Section

Articles

Similar Articles

You may also start an advanced similarity search for this article.