Olá pessoal!
Resolvi abordar um assunto que acho interessante, e que muitas vezes leva a calorosas discussões. O assunto é testes.
Minha experiência com testes é um tanto quanto limitada, pois nos projetos que participei anteriormente não havia essa preocupação com testes como há na Dextra. Ao ser apresentado à forma como os testes são feitos internamente, fiquei empolgado com o processo. Mas, passado o tempo, notei que havia vários aspectos nos testes que deixavam a desejar, mesmo que eu não soubesse exatamente o que poderia ser alterado para melhorar esse procedimento ou, ainda, se a mudança que pudesse sugerir resultaria em algo melhor.
Como desenvolvedor, sempre achei que algo mais faltava ao criar e executar testes. A impressão geral que sinto é que o esforço investido na criação de testes não tem o retorno esperado. Esta sensação acaba levando a outras coisas negativas, como um leve desânimo ao precisar criar um teste, pois há a impressão que você é muito mais produtivo programando alguma funcionalidade. Podemos também levantar outros pontos negativos na forma como experimentei os testes, como a demora para execução de todos os testes e na correção constante de testes já existentes, que “quebram” com novas mudanças nas funcionalidades.
Não estou querendo dizer que os testes são indesejáveis ou que dão pouco retorno. Acredito que sejam tão necessários que poderÃamos parar para pensar um pouco e refletir se há algo que pode ser alterado para aperfeiçoá-lo e gerar menos dores de cabeça em sua manutenção.
Mas não somente sobre testes que eu gostaria de falar, mas da forma como os testes são feitos no Google.
O Google criou um blog dedicado a falar sobre testes. O endereço é: http://googletesting.blogspot.com. Nesse blog, eles lançaram uma série de artigos de nome “How Google Tests Software”, apresentando, de uma forma geral, como eles organizam os seus testes, como as equipes envolvidas nos testes são compostas, quais os papéis existentes, etc. Atualmente, a série tem 7 partes, sendo que a primeira está disponÃvel no link: http://googletesting.blogspot.com/2011/01/how-google-tests-software.html.
Após a leitura da série, vi muitas idéias interessantes que, se não poderiam ser diretamente aproveitadas, poderiam nos fazer repensar na forma como fazemos os testes.
Como é um assunto difÃcil de concentrar em apenas um único texto, o dividi em 5 partes, sendo esta a primeira. A segunda parte aborda como a equipe do Google é organizada. A terceira conta o que o Google pensa sobre qualidade e os canais de desenvolvimento, e a quarta parte fala em como eles dividem o escopo dos testes a serem feitos. A quinta, e última, é um texto de reflexão de como podemos aproveitar algumas idéias do Google.
Adianto que, ao final dessa série, ela não foi capaz de sanar todas as minhas dúvidas. E também não será capaz de fazer o mesmo com vocês. Entretanto, creio que todos nós possamos tirar proveitosas informações. Ou que, no mÃnimo, isso gere uma discussão saudável.
Escrito por Dherik Barison
RSS dos comentários deste post · TrackBack URI
Comente