Alex de Magalhães Machado alexmag@inf.ufsc.br. Aplicações Web são mais instáveis Usuários...

Post on 17-Apr-2015

103 views 0 download

Transcript of Alex de Magalhães Machado alexmag@inf.ufsc.br. Aplicações Web são mais instáveis Usuários...

Alex de Magalhães Machadoalexmag@inf.ufsc.br

Aplicações Web são mais instáveis Usuários estão cada vez mais exigentes Qualidade de Software traz clientes, ou os manda

embora

Testadores simulam utilização do software pelo usuário Avaliam se o software faz o que ele deveria fazer Além disso, podem testar também a interface, a

usabilidade

Empresa pequena, sem muitos recursos Equipe de testes menor ainda Software Web com anos de existência, tendo sempre

sido testado manualmente Número de bugs encontrados por mês é constante

Solução encontrada Mas, o que é?◦ Testes executados por outro software através de scripts pré

definidos Questões pertinentes:◦Mais eficiente que manual?◦ Ferramentas de preço acessível?◦Quanto tempo até ficar pronto?◦Compensa mesmo?

Equipe de testes da empresa:◦Realizou curso de automatização de testes◦ Ficou responsabilizada por toda a implantação

Levantamento das principais ferramentas de automatização de testes

Elas foram avaliadas em vários quesitos

Equívocos dessa pesquisa:◦A princípio, achava-se a ferramenta Selenium pouco versátil◦Além disso, achava-se a ferramenta Watir bastante estável

Critério de eliminação:◦ Empresa não podia se dar ao luxo de adquirir uma ferramenta

paga◦ Por considerar o Watir mais estável e tão versátil quanto o

Selenium, adquiriu-se ele e iniciou-se a implantação

Watir possuía muitos bugs, pouco estável Testes para Internet Explorer funcionavam muito mal Nova pesquisa foi realizada◦Desenvolvedores consideravam o Selenium melhor

Mais de um mês foi perdido ao se tentar implantar o Watir, e o estudo da linguagem Ruby foi em vão para a equipe

Coordenadores da empresa desconfiaram da competência da equipe de testes

Descobriu-se que o Selenium possuía duas versões, e só havia se estudado uma delas

Implantação do Selenium RC ocorreu de forma mais tranquila

De fato, o Selenium se mostrou a melhor opção Único aprendizado necessário foi o da biblioteca usada,

pois os testes puderam ser desenvolvidos na mesma linguagem do software da empresa

Implantação demorada◦ Em 3 meses, apenas 60% do software da empresa possuía

testes automatizados Implantação compensadora◦Ao fim desses 3 meses, 70% dos bugs encontrados no sistema

eram detectados pela execução automatizada de testes

Ou seja, testes automatizados são mais eficientes que testes manuais

Mas quanto tempo até automatizar os testes de todo o software? Compensa esse tempo todo gasto?

Tempo gasto no total◦ 2 meses estudando as possíveis ferramentas◦ 1 mês implantando e desistindo do Watir◦ 3 meses implantando o Selenium◦ 6 meses no total, até o momento em que esse estudo foi

realizado◦ Estima-se mais 2 meses até que o trabalho esteja finalizado

Estima-se então um tempo total de 9 meses Bugs continuarão surgindo em partes do sistema

testadas de forma automatizada Porém, de agora em diante, esses bugs serão detectados

rapidamente e poderão ser corrigidos antes que o software seja disponibilizado para clientes

Ótimo, os testes agora são automatizados. Vamos então despedir toda a equipe de testes porque ela não é mais útil

NÃO! Os testes precisam ser sempre incrementados, melhorados, para detectarem cada vez mais tipos de erros diferentes

Estudo inicial deve ser feito com cuidado para não se escolher uma tecnologia errada

Problemas devem ser detectados com rapidez para que não atrasem muito a implantação da tecnologia nova

Implantação trouxe muitos benefícios à empresa, como esperado, embora o tempo despendido tenha sido superior ao planejado

Mesmo assim, acredita-se que a nova tecnologia agregará muito valor à empresa e muita qualidade ao software

Alex de Magalhães Machadoalexmag@inf.ufsc.br