"De chiquilín te miraba de afuera ...", começa o tango. "Quando era moleque te olhava de fora". Essa nostalgia tangueira foi evocada quando li algumas coberturas do CInTeQ 2010, que aconteceu aqui mesmo em SP nos dias 22 e 23/03. Infelizmente, não pude comparecer. Felizmente, foi anunciada uma nova edição para o próximo ano, e farei todo o possível para participar.
Da cobertura, me chamou a atenção o foco de algumas das palestras, particularmente a do Rex Black (um dos papas do teste de software), sobre agilidade. Gostaria muito de ter assistido a palestra. Segundo a cobertura do Fabrício Ferrari, do QualidadeBR (http://bit.ly/9Tw2Ys) , ele abordou assuntos como o papel da automação, gestão dos testes no contexto de Scrum, testes exploratórios e testes baseados em risco.
É ótimo ver que, também na área de testes, os conceitos da agilidade começam a fazer parte da corrente principal dos projetos de tecnologia da informação. Talvez no Brasil ainda a gente esteja bem no início: lá fora agilidade em geral já é "mainstream".
Até pouco tempo atrás, me sentia um pregador solitário no meio do deserto, tentando mostrar como não é apenas possível, como indispensável adotar pelo menos alguns conceitos de agilidade para poder testar eficazmente. Participo de comunidades ligadas à agilidade e ao teste de software, e vejo que ainda é preciso construir pontes entre elas: as diferenças entre modelos mentais ainda são grandes.
Na comunidade ágil, da qual participo desde que esta começou a se organizar no Brasil (palestrei já no XP Brasil 2002 sobre refactoring com AOP), os profissionais de teste são percebidos em geral como muito ligados ao modelo em cascata e à gestão baseada em comando e controle, e atividades de terceirização de serviços de testes são vistas com bastante reserva: afinal, teste é visto como algo indivisível do desenvolvimento: já fazemos example-driven development, certo ?
Comecei a trabalhar com automação de testes (capture & replay em ambiente AIX/Motif) em 94, depois de fazer um curso de tópicos de teste no mestrado da FEEC/UNICAMP, com o prof. Jino (um dos pioneiros na área no Brasil). A automação estava bem nos primórdios, e mais ou menos naquela época é que começou a se configurar o mercado das ferramentas comerciais de automação de teste baseadas na interface usuário (licenças caríssimas e soluções sem dor).
Essa percepção da automação baseada apenas na interface usuário ainda é forte na comunidade de testes, mas os agilistas vêem com reservas o investimento excessivo nesse tipo de automação, assim como a gestão segregada das atividades de teste e a insistência em documentação formal.
Em contrapartida, o uso eficaz de técnicas de automação para testes de unidade, convergência entre requisitos e testes automatizados (ATDD, BDD) , dev+ops, dublês de teste e padrões de projeto para apoiar a testabilidade (dependências injetáveis, presenter-first) parecem ter um eco bem maior na comunidade ágil: alguns desses conceitos são ainda estranhos para muitos profissionais de teste.
Em suma, ainda há um longo caminho a ser percorrido para unir experiências e avançar nos testes e na agilidade, com o objetivo de ter melhor qualidade e entregar software com mais valor para o negócio. Cada vez dependemos mais de software no dia a dia, para trabalhar, para nos comunicarmos e até para garantir nossa integridade física. Tendo começado com uma letra de tango, termino parafraseando a bossa nova:
"Os pogueiros que me desculpem, mas qualidade é fundamental."
Comentários