STILE: A tool for optimizing E2E web test scripts parallelization

被引:0
作者
Olianas, Dario [1 ]
Leotta, Maurizio [1 ]
Ricca, Filippo [1 ]
Biagiola, Matteo [2 ]
Tonella, Paolo [2 ]
机构
[1] Univ Genoa, Dipartimento Informat Bioingn Robot & Ingn Sistemi, Genoa, Italy
[2] Univ Svizzera italiana, Software Inst, Lugano, Switzerland
关键词
Web testing; Parallel testing; Dependency graph; Selenium; Docker;
D O I
10.1016/j.jss.2024.112304
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Web applications quality is commonly assessed by executing End-to-End (E2E) test scripts interacting with those systems as a human tester would. To avoid setting up the web application state for each test script, testers usually create test scripts that may depend on others previously executed. However, the presence of dependencies prevents parallelization, a fundamental technique for speedup the execution of large test suites. In this paper, we present STILE, a tool for parallelizing the execution of E2E web test scripts that generates and executes a set of test schedules satisfying two important constraints: (1) every schedule respects existing test dependencies, and (2) all test scripts in the test suite are executed at least once. Moreover, STILE optimizes the execution by running only once the test scripts that are shared among the schedules. We empirically evaluated STILE on eight E2E test suites by comparing the execution time of STILE both with the sequential execution and with the parallel execution based on Selenium Grid. Our results show that STILE can reduce the execution time up to 80% w.r.t. the sequential execution and up to 50% w.r.t. Grid. Moreover, STILE provides a reduction in the CPUs usage (i.e., overall CPU-time) up to 75%.
引用
收藏
页数:20
相关论文
共 43 条
[1]  
Alakeel A.M., 2022, IAENG Int. J. Comput. Sci., V49
[2]  
[Anonymous], International Energy Agency, (2020), https://www.iea.org/data-and-statistics/data-tables. Last accessed: 7 August 2021
[3]  
[Anonymous], 2022, Parallelization with TestNG
[4]  
[Anonymous], 2022, Docker images for the selenium grid server
[5]  
[Anonymous], 2022, ISO/IEC/IEEE 29119-1:2022(E),, P1, DOI [10.1109/IEEESTD.2022.9698145, DOI 10.1109/IEEESTD.2022.9698145]
[6]  
[Anonymous], 2022, Browsers market share-StatCounter
[7]  
Ashraf A., 2016, Gemeinsamer Tagungsband der Workshops der Tagung Software Engineering 2016 (SE 2016, V1559, P23
[8]   Efficient Dependency Detection for Safe Java']Java Test Acceleration [J].
Bell, Jonathan ;
Kaiser, Gail ;
Melski, Eric ;
Dattatreya, Mohan .
2015 10TH JOINT MEETING OF THE EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND THE ACM SIGSOFT SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING (ESEC/FSE 2015) PROCEEDINGS, 2015, :770-781
[9]   Web Test Dependency Detection [J].
Biagiola, Matteo ;
Stocco, Andrea ;
Mesbah, Ali ;
Ricca, Filippo ;
Tonella, Paolo .
ESEC/FSE'2019: PROCEEDINGS OF THE 2019 27TH ACM JOINT MEETING ON EUROPEAN SOFTWARE ENGINEERING CONFERENCE AND SYMPOSIUM ON THE FOUNDATIONS OF SOFTWARE ENGINEERING, 2019, :154-164
[10]  
Candido J, 2017, IEEE INT CONF AUTOM, P838, DOI 10.1109/ASE.2017.8115695