Por que optar pela automação de testes em aplicações legadas?



  • Esse artigo vou comentar um pouco sobre as experiências que obtive na escolha da estratégia de automação de testes em sistemas legados com uma tecnologia seja de interface, framework ou arquitetura defasada.

    alt text PROPOSTA:
    O projeto era iniciar o testes após um processo de migração banco e framework em um sistema bem antigo, que só roda no Internet Explorer e em modo de compatibilidade. O mesmo possui pouca ou quase nenhuma documentação.

    alt textDESAFIOS:

    Engenharia reversa no formato de estórias de usuário
    Automatizar os cenários em estrutura de telas modais, dentro das mesmas possuindo iframe que carregava grid scom informações pertinentes a consulta efetuada;

    Escolha da estratégia de Testes. Automatizar ou não? E qual ferramenta utilizar caso a reposta seja positiva?

    alt textESTRATÉGIA:
    A dúvida sempre aparece na hora de optar por automatizar um sistema antigo em que a busca por elementos dentro do DOM é quase caça ao tesouro, e a utilização do locator Xpath se torna praticamente infelizmente inevitável. Mas.... aceitei o desafio! Diante da resposta positiva agora surgia outra dúvida, qual ferramenta utilizar e qual seria menos custosa.

    alt textESCOLHA DA FERRAMENTA:

    Para a escolha da ferramenta optei no começo pelo próprio Selenium IDE, mesmo sendo uma extensão do firefox é uma ferramenta considerável de recording play, já fiz e faço ainda muita coisa com ela( é possível rodar os testes no Internet Explorer através do Selenium Server Standalone no meu caso altamente necessário já que como falei anteriormente a aplicação só rodava no IE e e modo de compatibilidade 6, mesmo sabendo das dificuldades da mesma, ela me atendeu até um certo momento, porém por conta das modais e iframes em várias funcionalidades, o processo começou a ficar complicado, deixando de lado a princípio os cenários mais complexos e guardando a suite com os testes cases que funcionaram para os testes de regressão mais específicos, e utilizando os que falharam para alimentar a segunda estratégia abaixo.

    O segundo momento dessa estratégia foi a utilização do selenium webdriver. Utilizei ele com o framework Specflow para consolidar os cenários de aceitação das estórias de usuário com a automação. Essa estratégia foi muito bem vinda já que o viés do projeto é documentação viva.

    alt textAPRENDIZADO:
    A lição que que obtive nesse projeto é que TODA AUTOMAÇÃO É BEM VINDA, bastar definir uma estratégia e seguir, o custo de manutenção seja via recordin play, unitários, funcionais automatizados, manuais, sempre existirá, basta estar alinhado com o time e PO do Projeto. A utilização de todos os cenários automatizados foi de grande ajuda em vários momentos do projetos que necessitaram de regressão. A Redução de tempo para os testes manuais foi significativa principalmente com possibilidade de consolidar em uma integração contínua esses mesmos cenários.

    LINK DAS FERRAMENTAS:
    Selenium: http://www.seleniumhq.org/
    Selenium IDE: https://addons.mozilla.org/pt-BR/firefox/addon/selenium-ide/]
    Specflow: http://specflow.org/

    Um grande abraço a todos!!

    Esse meu artigo foi originalmente escrito no blog testesdiretodastrincheiras


Log in to reply
 

Looks like your connection to Bug Overflow was lost, please wait while we try to reconnect.