In Continuous Integration (CI), regression testing is constrained by the time between commits. This demands for careful selection and/or prioritization of test cases within test suites too large to be run entirely. To this aim, some Machine Learning (ML) techniques have been proposed, as an alternative to deterministic approaches. Two broad strategies for ML-based prioritization are learning-to- rank and what we call ranking-to-learn (i.e., reinforcement learning). Various ML algorithms can be applied in each strategy. In this paper we introduce ten of such algorithms for adoption in CI practices, and perform a comprehensive study comparing them against each other using subjects from the Apache Commons project. We analyze the in uence of several features of the code under test and of the test process. The results allow to draw criteria to support testers in selecting and tuning the technique that best ts their context.
Learning-to-Rank vs Ranking-to-Learn: Strategies for Regression Testing in Continuous Integration / Bertolino, Antonia; Guerriero, Antonio; Miranda, Breno; Pietrantuono, Roberto; Russo, Stefano. - (2020), pp. 1261-1272. (Intervento presentato al convegno 42nd International Conference on Software Engineering tenutosi a Seoul, Korea nel 27 June 2020 through 19 July 2020) [10.1145/3377811.3380369].
Learning-to-Rank vs Ranking-to-Learn: Strategies for Regression Testing in Continuous Integration
Antonio Guerriero;Roberto Pietrantuono;Stefano Russo
2020
Abstract
In Continuous Integration (CI), regression testing is constrained by the time between commits. This demands for careful selection and/or prioritization of test cases within test suites too large to be run entirely. To this aim, some Machine Learning (ML) techniques have been proposed, as an alternative to deterministic approaches. Two broad strategies for ML-based prioritization are learning-to- rank and what we call ranking-to-learn (i.e., reinforcement learning). Various ML algorithms can be applied in each strategy. In this paper we introduce ten of such algorithms for adoption in CI practices, and perform a comprehensive study comparing them against each other using subjects from the Apache Commons project. We analyze the in uence of several features of the code under test and of the test process. The results allow to draw criteria to support testers in selecting and tuning the technique that best ts their context.File | Dimensione | Formato | |
---|---|---|---|
ICSE2020 fromProceedings.pdf
solo utenti autorizzati
Licenza:
Copyright dell'editore
Dimensione
2.56 MB
Formato
Adobe PDF
|
2.56 MB | Adobe PDF | Visualizza/Apri Richiedi una copia |
bertolino_etal_icse20_accepted.pdf
accesso aperto
Tipologia:
Documento in Pre-print
Licenza:
Accesso privato/ristretto
Dimensione
2.48 MB
Formato
Adobe PDF
|
2.48 MB | Adobe PDF | Visualizza/Apri |
I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.