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 条
[11]  
De La Briandais Rene, 1959, 1959 W JOINT COMP C, P295, DOI DOI 10.1145/1457838.1457895
[12]   Ant algorithms for discrete optimization [J].
Dorigo, M ;
Di Caro, G ;
Gambardella, LM .
ARTIFICIAL LIFE, 1999, 5 (02) :137-172
[13]   Practical Test Dependency Detection [J].
Gambi, Alessio ;
Bell, Jonathan ;
Zeller, Andreas .
2018 IEEE 11TH INTERNATIONAL CONFERENCE ON SOFTWARE TESTING, VERIFICATION AND VALIDATION (ICST), 2018, :1-11
[14]   A Survey of the Selenium Ecosystem [J].
Garcia, Boni ;
Gallego, Micael ;
Gortazar, Francisco ;
Munoz-Organero, Mario .
ELECTRONICS, 2020, 9 (07) :1-29
[15]  
Garg Deepak., 2013, Proceedings of the Thirty-Sixth Australasian Computer Science Conference-Volume, V135, P61
[16]   Analysis and Design of Selenium WebDriver Automation Testing Framework [J].
Gojare, Satish ;
Joshi, Rahul ;
Gaigaware, Dhanashree .
BIG DATA, CLOUD AND COMPUTING CHALLENGES, 2015, 50 :341-346
[17]   BOUNDS ON MULTIPROCESSING TIMING ANOMALIES [J].
GRAHAM, RL .
SIAM JOURNAL ON APPLIED MATHEMATICS, 1969, 17 (02) :416-&
[18]  
Kim W, 2008, INT S HIGH PERF COMP, P115
[19]  
Kirch W., 2008, Encyclopedia of Public Health, P1090, DOI [10.1007/978-1-4020-5614-72569, DOI 10.1007/978-1-4020-5614-72569, 10.1007/978-1-4020-5614-7_2569, DOI 10.1007/978-1-4020-5614-7_2569]
[20]   Practitioners' Views on Good Software Testing Practices [J].
Kochhar, Pavneet Singh ;
Xia, Xin ;
Lo, David .
2019 IEEE/ACM 41ST INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING: SOFTWARE ENGINEERING IN PRACTICE (ICSE-SEIP 2019), 2019, :61-70