Entendendo a relação entre integração contínua e cobertura de código
Continuous Integration (CI) is a widely adopted software engineering practice emphasizing frequent software integration through an automated build process. Although CI has been shown to detect errors earlier in the software life cycle, the relationship between CI and code coverage still needs to...
Na minha lista:
Autor principal: | |
---|---|
Outros Autores: | |
Formato: | doctoralThesis |
Idioma: | pt_BR |
Publicado em: |
Universidade Federal do Rio Grande do Norte
|
Assuntos: | |
Endereço do item: | https://repositorio.ufrn.br/handle/123456789/54543 |
Tags: |
Adicionar Tag
Sem tags, seja o primeiro a adicionar uma tag!
|
Resumo: | Continuous Integration (CI) is a widely adopted software engineering practice
emphasizing frequent software integration through an automated build process. Although
CI has been shown to detect errors earlier in the software life cycle, the relationship
between CI and code coverage still needs to be clarified. Our work aims to fill this gap
by investigating the quantitative and qualitative aspects of this relationship. In the quantitative study, we compare 30 CI projects and 30 projects that have
never adopted CI (NOCI projects) to investigate whether CI is associated with higher
code coverage rates. We analyzed 1,440 versions from different projects to identify trends
in code coverage. Our findings reveal a positive association between CI and higher code
coverage rates. Our qualitative study consisted of a survey and a document analysis. The survey
revealed several significant findings, including a positive association between continuous
integration (CI) and higher code coverage rates, indicating the value of CI in promoting
testing practices. Additionally, our survey highlighted the importance of using code
coverage during the authoring and review process, which can help identify potential
issues early in the development cycle. The document analysis focused on coverage-related themes in pull request conversations in CI-enabled projects. Through this analysis, we discovered the main topics related to coverage usage during pull requests, which can provide valuable insights
into how developers use coverage to improve code quality. This information can help guide
the development of best practices for using coverage in CI-enabled projects, ultimately
improving the quality and reliability of software products. Our work offers insights into the evolution of code coverage in CI, which can assist researchers and practitioners in adopting tools and practices for better monitoring, maintenance, and even enhancement of code coverage. |
---|