Using HLPC for parallelization of autonomous tests of WEB applications from its GUI

  • Mario Rossainz-López ,
  • Jesús A. Islas-Fuentes ,
  • Ivo Pineda-Torres ,
  • Manuel Capel-Tuñón
  • a,b,c   Faculty of Computer Science, Autonomous University of Puebla, Av. San Claudio and 14 Sur Street, San Manuel,
    Puebla, México, C.P. 72570
  • Software Engineering Department, College of Informatics and Telecommunications ETSIIT, University of
    Granada, Daniel Saucedo Aranda s/n, Granada 18071, Spain
Cite as
Rossainz M., Islas Fuentes J.A., Pineda Torres I. H., and Capel Tuñón M. I. (2022).,Using HLPC for parallelization of autonomous tests of WEB applications from its GUI. Proceedings of the 34th European Modeling & Simulation Symposium (EMSS 2022). , 003 . DOI: https://doi.org/10.46354/i3m.2022.emss.003

Abstract

A proposal for parallelization of autonomous tests of Web applications from its graphical user interface (GUI) is presented to reduce its execution time since these increases exponentially due to the number of combinations that are generated with the different states of the fields, of the forms on the web application pages by creating a tree-like structure. It is proposed to use the model of high-level parallel compositions or HLPC as a suitable model of semi-automatic parallelization that defines a Treelike structure as a communication pattern between processes. The proposed HLPC, which we call HLPC-Tree, uses reinforcement learning that associates each node of the process tree as a slave object using the Q-Learning (QL) algorithm and achieves autonomous recognition of the fields of the forms and valid-invalid options to identify failures and display them with HTTP status codes. In addition, the Mechanize library is used to find the number of possible combinations through the states of the fields of the forms and to know how many nodes are generated at each level of the process tree in the HLPC-Tree when it grows in depth. Finally, the performance analysis of the proposed HLPC is shown with an analysis of the speedup and execution times in an 8-core machine to demonstrate good scalability in its accelerations compared to Amdahl's Law.

References

  1. Barto G., (2014). Reinforcement Learning: An Introduction. Stanford University.
  2. Corradi A. and Leonardi L. (1991). PO Constraints astools to synchronize active objects.Journal ObjectOrientedProgramming 10:42-53.
  3. Danelutto,M., Torquati,M. (2014).Loop parallelism: anew skeleton perspective ondata parallel patterns.Proc. of Intl. Euromicro PDP,Parallel DistributedandNetwork-based Processing, Torino, Italy.
  4. Django,(2021).The web framework for perfectionistswith deadlines.https://www.djangoproject.com
  5. Eskonen,J., (2019).Deep Reinforcement Learning inAutomated User Interface Testing.AltoUniversity,
  6. Gross,P.,WangJ.T. (2022).Selenium automatesbrowsers.https://www.selenium.dev/
  7. Harries,L.,(2019).DRIFT: Deep ReinforcementLearning for Functional Software Testing.33rdDeep ReinforcementLearning Workshop (NeurIPS2019),1-8.
  8. JangB.,(2017).Q-learning Algorithms: AComprehensive Classification and Applications.Department of Computer Science, SangmyungUniversity.
  9. KovidGoyal(2017).Mechanize. https://mechanize.readthedocs.io/en/latest/
  10. KovidGoyal(2017).Mechanize. https://mechanize.readthedocs.io/en/latest/
  11. Li,Y.,Yang,Z.,GuoY.andChenX. (2019).Humanoid:A Deep Learning-Based Approach to AutomatedBlack-box Android App Testing.34th IEEE/ACMInternational Conference onAutomated SoftwareEngineering (ASE),1070-1073.
  12. Lucca,F.A.D., (2006).Web Application Testing.WebEngineering.219-260.
  13. McCool M., Robison A.D. and Reinders J. (2012).Structured Parallel Programming. Patterns forEfficient Computation. Morgan KaufmannPublishers Elsevier. USA.
  14. Nguyen, D.P., (2020).Codeless web testing usingSelenium and machine learning.15th InternationalConference on Software Technologies,2-7.
  15. Rossainz M. and Capel M. (2017). Design andimplementation of communication patterns usingparallelobjects. Especial edition, Int. J. Simulationand Process Modelling, 12:1.
  16. Umar,M.A., (2019).A comprehensivestudy ofsoftware testing: Categories,levels, techniques,and types.International Journal ofAdvancedResearch, Ideas,and Innovationsin Technology.