Instituto de Computação - UNICAMP

MC039A/MO901I Seminários sobre Software Livre

Islene Calciolari Garcia

FSFLA

Autotest - O Framework de testes do Linux (o kernel)

Lucas Meneghel Rodrigues

03/06 às 16:00 na CB05

Resumo: A automação de testes tem sido uma tendência crescente e popular na engenharia de software. No entanto, é difícil testar de maneira efetiva componentes de software de baixo nível (kernel) e hardware, por isso testes desses componentes são, em sua maioria, sido executados de maneira manual e não sistemática. A observação da taxa de mudança de um kernel open source como o Linux, que remonta à casa das dezenas de milhares de linhas modificadas por dia, nos mostra que testes manuais e não sistemáticos não atendem a necessidade de controle de qualidade de tais projetos.

Portanto, para resolver o problema de controle de qualidade de uma plataforma (hardware, kernel e outros componentes de software de baixo nível) é necessária uma infra estrutura projetada levando-se em consideração as dificuldades de teste destes componentes, procurando antecipar falhas em diversos níveis do kernel e do hardware. A automação, execução dos testes, análise de resultados e o registro destes resultados deve ser feita de forma integrada, e com grande escalabilidade (deve ser possível testar milhares de máquinas de uma vez). Deve ser flexível para acomodar uma ampla gamas de teste e de abordagens de teste, e deve exigir dos desenvolvedores pouco esforço para integrar suítes de teste pre-existentes a esta infra estrutura.

O autotest é um projeto open source que tem como objetivo prover esta infra estrutura para desenvolvedores. Possui uma arquitetura modular e diversas ferramentas úteis para realizar a automação completa de testes de componentes software de baixo nível, assim como o hardware onde estes componentes de software são executados. Durante a palestra, a motivação, arquitetura e implementação do projeto será discutida, e exemplos de implementação de testes serão dados.

Sobre o palestrante: Lucas Meneghel Rodrigues é engenheiro de software, e tem trabalhado com automação de testes por cerca de 2 anos, contribuindo com o projeto autotest com testes e patches em diversas áreas do framework. Trabalhou no Linux Technology Center da IBM na equipe de testes de linux em servidores IBM system p, e hoje é parte da equipe de testes dos produtos de virtualização da Red Hat.