Understanding the testing culture of machine learning projects on Github. - SANTOS, Wesley Matteus Araújo dos. (2023)
Nos últimos anos, o uso de aprendizado de máquina aumentou em diversas indústrias, mostrando seu notável potencial para resolver tanto problemas antigos como emergentes em uma escala nunca antes vista. No entanto, apesar dos esforços na produção de modelos novos e melhorados, bem como metodologias de treinamento mais confiáveis, pouco se sabe sobre como esses softwares estão sendo testados. Neste trabalho, investigamos a adoção de bibliotecas Python para, ou relacionadas, a testes automatizados em mais de 290 repositórios de aprendizado de máquina no Github. Nós também comparamos repositórios que usam e não usam essas ferramentas, em termos de métricas de qualidade, e estudamos sua cobertura de código. Como resultado, 28 bibliotecas usadas para fins de suporte a testes foram identificadas e 65,19% de todos os projetos adotaram pelo menos uma delas. Nós também encontramos que projetos de aprendizagem por reforço e de análise/visualização de dados têm as maiores adoções de testes automatizados, e que unittest, pytest e doctest são as bibliotecas mais utilizadas em nosso corpus. Além disso, descobrimos que metade dos projetos que usam pelo menos uma biblioteca de testes, tem menos code smells (48,28% em mediana) e, em média, eles têm menos vulnerabilidades (71,42%).