(untitled) (Encontros Universitários da UFC, 2019)
A exigência por maior qualidade de software vem crescendo à medida que os sistemas estão mais presentes nas atividades do cotidiano, embora a ideia de qualidade de software seja intuitiva, ao ser analisada minuciosamente, esse conceito se torna complexo. Por ser complexo, muitos autores e normas técnicas propõem modelos, que facilitam a avaliação da qualidade e de software. No geral, eles definem um conjunto de características que está diretamente relacionado com a qualidade de software. Uma característica presente na maioria desses modelos é a “Testabilidade”, pois ela possui relação com o teste de software, que tem como objetivo validar se um programa faz o que é proposto a fazer, enquanto a testabilidade pode ser definida como a facilidade com que um programa pode ser testado. Dessa forma, avaliar a testabilidade de um software traz informações relevantes sobre a qualidade de um sistema. Porém, ela não é uma característica intrínseca do software, e, portanto, deve se identificar ou definir atributos ou medidas que deem uma indicação direta sobre testabilidade. A proposta deste estudo é avaliar a testabilidade de software de uma perspectiva caixa branca em projetos open source. Na primeira etapa do estudo foi feita uma revisão bibliográfica para identificar atributos de testabilidade e métricas que representem esses atributos. Nesta etapa, foram identificados 12 atributos e 30 métricas relacionados à testabilidade. Com base nessa identificação, foi planejada e executada uma avaliação para medir a testabilidade em três projetos open source. Com os resultados obtidos, observou-se que a maioria das métricas que não influenciaram na testabilidade foram relacionadas ao atributo “Simplicidade” e coletadas a partir de Diagramas UML. Por outro lado, a maioria das métricas que influenciaram são relacionadas ao código fonte dos projetos, mostrando que aspectos como “Coesão”, “Acoplamento” e “Herança” dos projetos tiveram muita influência na testabilidade.