Cargando…
Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster
Research in software testing often involves the development of software prototypes. Like any piece of software, there are challenges in the development, use and verification of such tools. However, some challenges are rather specific to this problem domain. For example, often these tools are develop...
Autores principales: | , , , , , , |
---|---|
Formato: | Online Artículo Texto |
Lenguaje: | English |
Publicado: |
Springer US
2023
|
Materias: | |
Acceso en línea: | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10483991/ https://www.ncbi.nlm.nih.gov/pubmed/37692292 http://dx.doi.org/10.1007/s11219-023-09620-w |
_version_ | 1785102505223389184 |
---|---|
author | Arcuri, Andrea Zhang, Man Belhadi, Asma Marculescu, Bogdan Golmohammadi, Amid Galeotti, Juan Pablo Seran, Susruthan |
author_facet | Arcuri, Andrea Zhang, Man Belhadi, Asma Marculescu, Bogdan Golmohammadi, Amid Galeotti, Juan Pablo Seran, Susruthan |
author_sort | Arcuri, Andrea |
collection | PubMed |
description | Research in software testing often involves the development of software prototypes. Like any piece of software, there are challenges in the development, use and verification of such tools. However, some challenges are rather specific to this problem domain. For example, often these tools are developed by PhD students straight out of bachelor/master degrees, possibly lacking any industrial experience in software development. Prototype tools are used to carry out empirical studies, possibly studying different parameters of novel designed algorithms. Software scaffolding is needed to run large sets of experiments efficiently. Furthermore, when using AI-based techniques like evolutionary algorithms, care needs to be taken to deal with their randomness, which further complicates their verification. The aforementioned represent some of the challenges we have identified for this domain. In this paper, we report on our experience in building the open-source EvoMaster tool, which aims at system-level test case generation for enterprise applications. Many of the challenges we faced would be common to any researcher needing to build software testing tool prototypes. Therefore, one goal is that our shared experience here will boost the research community, by providing concrete solutions to many development challenges in the building of such kind of research prototypes. Ultimately, this will lead to increase the impact of scientific research on industrial practice. |
format | Online Article Text |
id | pubmed-10483991 |
institution | National Center for Biotechnology Information |
language | English |
publishDate | 2023 |
publisher | Springer US |
record_format | MEDLINE/PubMed |
spelling | pubmed-104839912023-09-08 Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster Arcuri, Andrea Zhang, Man Belhadi, Asma Marculescu, Bogdan Golmohammadi, Amid Galeotti, Juan Pablo Seran, Susruthan Softw Qual J Article Research in software testing often involves the development of software prototypes. Like any piece of software, there are challenges in the development, use and verification of such tools. However, some challenges are rather specific to this problem domain. For example, often these tools are developed by PhD students straight out of bachelor/master degrees, possibly lacking any industrial experience in software development. Prototype tools are used to carry out empirical studies, possibly studying different parameters of novel designed algorithms. Software scaffolding is needed to run large sets of experiments efficiently. Furthermore, when using AI-based techniques like evolutionary algorithms, care needs to be taken to deal with their randomness, which further complicates their verification. The aforementioned represent some of the challenges we have identified for this domain. In this paper, we report on our experience in building the open-source EvoMaster tool, which aims at system-level test case generation for enterprise applications. Many of the challenges we faced would be common to any researcher needing to build software testing tool prototypes. Therefore, one goal is that our shared experience here will boost the research community, by providing concrete solutions to many development challenges in the building of such kind of research prototypes. Ultimately, this will lead to increase the impact of scientific research on industrial practice. Springer US 2023-03-06 2023 /pmc/articles/PMC10483991/ /pubmed/37692292 http://dx.doi.org/10.1007/s11219-023-09620-w Text en © The Author(s) 2023 https://creativecommons.org/licenses/by/4.0/Open AccessThis article is licensed under a Creative Commons Attribution 4.0 International License, which permits use, sharing, adaptation, distribution and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons licence, and indicate if changes were made. The images or other third party material in this article are included in the article's Creative Commons licence, unless indicated otherwise in a credit line to the material. If material is not included in the article's Creative Commons licence and your intended use is not permitted by statutory regulation or exceeds the permitted use, you will need to obtain permission directly from the copyright holder. To view a copy of this licence, visit http://creativecommons.org/licenses/by/4.0/ (https://creativecommons.org/licenses/by/4.0/) . |
spellingShingle | Article Arcuri, Andrea Zhang, Man Belhadi, Asma Marculescu, Bogdan Golmohammadi, Amid Galeotti, Juan Pablo Seran, Susruthan Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title | Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title_full | Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title_fullStr | Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title_full_unstemmed | Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title_short | Building an open-source system test generation tool: lessons learned and empirical analyses with EvoMaster |
title_sort | building an open-source system test generation tool: lessons learned and empirical analyses with evomaster |
topic | Article |
url | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC10483991/ https://www.ncbi.nlm.nih.gov/pubmed/37692292 http://dx.doi.org/10.1007/s11219-023-09620-w |
work_keys_str_mv | AT arcuriandrea buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT zhangman buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT belhadiasma buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT marculescubogdan buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT golmohammadiamid buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT galeottijuanpablo buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster AT seransusruthan buildinganopensourcesystemtestgenerationtoollessonslearnedandempiricalanalyseswithevomaster |