Assessing the migration of testing frameworks in the Python ecosystem
Atualmente, desenvolvedores Python podem utilizar dois frameworks de teste: unittest e pytest. Devido aos benef´ıcios do pytest (tais como reuso de fixtures), muitos projetos relevantes no ecossistema Python migraram do unittest para o pytest. Apesar de ser realizada pela comunidade Python, ainda n˜...
| Autor: | |
|---|---|
| Tipo de documento: | Tesis de maestría |
| Estado: | Published version |
| Fecha de publicación: | 2022 |
| País: | Brasil |
| Institución: | UFMG |
| Repositorio: | Repositório Institucional da UFMG |
| Lenguaje: | Inglés |
| OAI Identifier: | oai:repositorio.ufmg.br:1843/47346 |
| Acceso en línea: | http://hdl.handle.net/1843/47346 |
| Nivel de acceso: | Acceso abierto |
| Palabra clave: | Software testing Software maintenance Mining software repositories Empirical software engineering Python Pytest Unittest Computação – Teses Software – Testes – Teses Mineração de dados (Computação) – Teses Engenharia de Software – Teses Python (Linguagem de programação de computador) – Teses |
| Sumario: | Atualmente, desenvolvedores Python podem utilizar dois frameworks de teste: unittest e pytest. Devido aos benef´ıcios do pytest (tais como reuso de fixtures), muitos projetos relevantes no ecossistema Python migraram do unittest para o pytest. Apesar de ser realizada pela comunidade Python, ainda n˜ao temos informações suficientes sobre a migração de unittest para pytest, nem sobre as raz˜oes da migração. Neste estudo, analizamos como e por qual motivo desenvolvedores migram de unittest para pytest. Para isso, mineramos os 100 sistemas Python mais populares e analisamos seus status de migrações. Os resultados mostram que 34% dos sistemas dependem de ambos frameworks de teste e que projetos Python est˜ao, de fato, realizando a migração para pytest. Enquanto alguns sistemas mi graram completamente, outros ainda estão migrando após um longo período, sugerindo que a migração não é sempre direta. Em geral, o código de teste migrado é menor que o original. Além disso, desenvolvedores migram para pytest por diversas razões, como sintaxe simplificada, interoperabilidade, manutenção facilitada e flexibilidade/reuso de fixtures, entretanto, a mecânica implícita do pytest e o fato de ser um pacote não nativo são preocupações relevantes. |
|---|