Equipe de teste separada? Então possivelmente você tem um problema
Testar é uma responsabilidade da equipe de testes, certo? Errado! A responsabilidade do teste é do desenvolvedor, pois o código é dele. Ele deve ser o responsável por garantir que o cliente receberá um produto com a menor quantidade de falhas possível. Se na sua empresa você tem uma equipe de testes separada, “responsável” por testar as suas aplicações, então eu digo que você tem problema nas mãos. Vou explicar o problema, funciona assim:
Desenvolvedores
Como existe uma equipe dedicada para testar as aplicações, o desenvolvedor acaba relaxando nos testes que ele deveria implementar, e passa a responsabilidade do teste para aquela equipe, com o seguinte pensamento: “Ok, ok, vou testar aqui mais ou menos aqui porque o teste pra valer é com o pessoal da equipe de testes… Se eles não pegarem, o cliente também não pega. E se o cliente pegar, bem, foram eles que deixaram passar…”
Equipe de testes
A equipe de teste, que certamente não deve usar testes automatizados, executa os testes conforme o humor da equipe, ou seja, um dia pegam pesado, no outro a paciência não está tão grande e o teste sai mais “fraquinho”. O ponto aqui é que os testes acabam nunca sendo repetidos da mesma maneira, e isso é muito ruim porque acaba passando uma falsa sensação de dever cumprido para a equipe e de segurança para o resto da empresa.
Jogo de empurra-empurra
Além do comportamento mostrado anteriormente pelas duas equipes, é quase certo que existirá uma concorrência entre as equipes, sempre com o intuito de culpar o outro. Se um bug é pego em produção e o cliente reclama, a equipe de desenvolvimento argumenta que a culpa é da equipe de testes que deixou o erro passar. Já a equipe de teste rotula todos os desenvolvedores de incompetentes, porque sempre enviam uma versão da aplicação cheia de erros, e dos mais básicos possíveis.
Na verdade as duas equipes deveriam estar trabalhando juntas, e quando digo juntas quero dizer lado a lado. Os analistas de teste devem sentar com os programadores para ajudar a pensar os testes que devem ser implementados. Só assim, com atenção e foco dobrados é possível chegar a uma quantidade mínima de erros.
A responsabilidade é sua
Depois do que falei acima, muita gente vai dizer o seguinte: “Ah, mas na minha empresa é assim mesmo, as equipes são separadas e a gerência entende que assim é melhor… blá, blá, blá“. Faça um favor para você mesmo, tome a responsabilidade de criar os testes para você, como se não existisse outra maneira de fazer software (na verdade essa é a única que funciona a longo prazo). Não espere que o seu gerente, o líder de equipe ou seja lá quem está acima de você peça para você implementar os testes. Inclua sempre nas suas estimativas o tempo necessário para escrever os seus testes, organizar o seu código, deixar tudo limpinho.
Lembre-se, o código é seu, a responsabilidade é sua!
Gostou ou não gostou? Ah, não concorda não? Então fala aí! Quero ouvir :-)
