Estudo de caso: Redução do tempo de execução de testes no Sistema da Nota Fiscal com a implementação de testes automatizados utilizando a ferramenta Selenium Webdriver

Tempo estimado de leitura: 7 minutos

Introdução

A Nota Fiscal de Serviços Eletrônica - NFS-e é o documento fiscal de existência digital que substitui as tradicionais notas fiscais de serviços impressas. A NFS-e, implantada pelo Departamento de Receitas Mobiliárias da Secretaria Municipal de Finanças em 2009, é emitida e armazenada eletronicamente em programa de computador da Prefeitura Municipal de Campinas, com o objetivo de materializar os fatos geradores do ISSQN – Imposto Sobre Serviços de Qualquer Natureza, por meio do registro eletrônico das prestações de serviços sujeitas à tributação do ISSQN.

O sistema da nota fiscal simplifica a vida dos prestadores de serviços e gera créditos para seus clientes como pessoas jurídicas e físicas do munícipio de Campinas. É um sistema que possui manutenção e evolução constante nas suas funcionalidades para que falhas não interrompam o seu funcionamento, ou seja, o objetivo é que a disponibilidade dele seja máxima. Além de tamanha importância para o cidadão campineiro ele também contribui diretamente com a arrecadação do município.

O processo de teste de software tem como finalidade controlar a qualidade dos sistemas, o que é um grande desafio para empresas devido a vários fatores como a complexidade dos produtos, dificuldades no processo de desenvolvimento que podem ser por questões de negócios, de recursos, de burocracia entre outras. Com objetivo de aumentar a disponibilidade e qualidade do sistema foi planejado o processo de automatização de testes de software com a proposta de implantar a pirâmide de testes cobrindo testes unitários, testes de integração e testes funcionais.

2. Como eram executados os testes

O processo de homologação das tarefas desenvolvidas era executado duas vezes ao mês e após a equipe finalizar o desenvolvimento das tarefas estas eram colocadas no ambiente de homologação para execução dos testes com objetivo de verificar se as funcionalidades alteradas estavam funcionando adequadamente e se não afetaram outras partes do sistema.

Durante a execução dos testes eram alocados pelo menos um analista de sistemas da Informática de Municípios Associados - IMA para executar os testes descritos no checklist e também era alocado um responsável na prefeitura, ou seja , pelo menos duas pessoas  eram necessárias para executar testes manuais de um checklist de  cinquenta páginas, totalizando no mínimo 16 horas de trabalho. Para comprovar os testes o analista registrava a execução dos testes efetuados para ao final da tarefa gerar um relatório de evidências.

3. Quais problemas existiam?

O checklist era executado através de testes manuais que duravam pelo menos 16 horas de trabalho.
Os testes manuais eram executados duas vezes ao mês e só verificavam alguns efeitos das funcionalidades colocadas para homologação durante essa execução.
Os testes manuais quando repetidos várias vezes podem se tornar cansativos e trazer vícios durante a execução.

4. Como melhoramos e quais resultados?

A equipe técnica da nota fiscal realizou um mapeamento dos sistemas junto com a equipe de testes para analisar os possíveis cenários  para executar os testes. E foi definido a implantação dos testes automatizados funcionais, pois é o que mais agrega valor ao sistema para realizar a validação de forma automática e com uma resposta mais rápida sobre a qualidade da entrega.
A ferramenta Selenium Webdriver, uma biblioteca em Java,  foi escolhida para automatizar os testes funcionais. O principal uso do Selenium é automatizar aplicativos da web para fins de teste, mas não se limita apenas a isso, podendo também automatizar tarefas de administração que sejam repetitivas.
Foram desenvolvidos dezoito cenários de testes para cobrir o checklist de cinquenta páginas. Foi cadastrado um serviço no Jenkins para execução dos testes, assim o desenvolvedor não precisa ter o ambiente de desenvolvimento dos testes automatizados instalados na sua máquina local. No futuro esse serviço servirá de filtro no deploy.

O checklist que era executado manualmente por uma pessoa agora pode ser executada por um script e em menos tempo, aproximadamente cinco minutos.
Os testes automatizados são executados antes em ambiente de homologação e em caso de sucesso o sistema está pronto para ser liberado na produção.
Hoje os testes automatizados podem ser executados por qualquer técnico que tenha acesso ao Jenkins. 
Hoje qualquer pessoa do time pode colocar a tarefa desenvolvida no ambiente de homologação e executar os testes através do job verificando se não afetou nenhuma funcionalidade.

5. Conclusão

Com a automação eliminamos os trabalhos repetitivos, diminuímos os erros que podem ser cometidos por trabalhos manuais, empregamos melhor as horas da equipe, conseguimos uma resposta rápida sobre a qualidade do sistema e  aumentamos a disponibilidade das funcionalidade desenvolvidas.
Os testes automatizados são executados em um tempo bem menor e com uma saída que identifica rapidamente onde está o erro, eles podem ser executados várias vezes ao dia para verificar a disponibilidade do sistema e também podem ser utilizados para realizar testes de carga no sistema.
Os testes automatizados tornaram as entregas mais rápidas e de acordo com o esperado pelo cliente e trouxeram principalmente a melhoria da qualidade dos sistemas e softwares.

Envolvidos no projeto de automatização dos testes da Nota Fiscal de Serviços Eletrônica - NFS-e: André Mateus, Cássia Domingues, Cíntia AlvesDalton Daibes, Diego de Andrade, Luiz Zanatta, Patrick Facci, Rodrigo Turatti, Rodolfo de Santi.

 

Comentários

Foto de Rafael Vieira

Sou servidor público da Sefaz/MT e percebo que isso da sentido para outros documentos fiscais eletrônicos. Sou da fiscalização, mas estou muito ligado a resultados (https://midassorte.com.br/resultado/) na área de TI. Parabéns pela abordagem e solução construída.
Curtir
123 usuarios curtiram
Foto de Cíntia Alves

Obrigada.
Curtir
131 usuarios curtiram
Foto de Classe A Flex Moveis para Escritório

Muito bom trabalhao
Curtir
138 usuarios curtiram
Foto de rastreamento

muito bom
Curtir
2 usuarios curtiram

Comentar