quarta-feira, 24 de abril de 2019

O que é RPA (Robotic Process Automation) e qual a diferença para automação de testes

RPA do inglês Robotic Process Automation é a tecnologia que permite que qualquer pessoa, hoje, configure um software de computador ou um “robô” para emular e integrar as ações de um ser humano interagindo em sistemas digitais para executar um processo de negócios. 

Os robôs RPA utilizam a interface do usuário para capturar dados e manipular aplicativos como os humanos. Eles interpretam, acionam respostas e se comunicam com outros sistemas para executar uma grande variedade de tarefas repetitivas. Obviamente o que eles fazem melhor: um robô de RPA nunca dorme, comete zero erros e custa muito menos do que um empregado.
Fundamentalmente, qualquer processo de alto volume, orientado por regras de negócios e repetível, se qualifica para automação por RPA.

Com o uso muitas vezes de inteligencia artificial (AI) , Robôs RPA são capazes de imitar  a maioria das ações dos seres humanos. Eles fazem login em aplicativos, movem arquivos e pastas, copiam e colam dados, preenchem formulários, extraem dados estruturados e semiestruturados de documentos, rolam navegadores, interpretam imagens e muito mais.

Mas calma ai, se rodar um teste automatizado nada mais é do que fazer um robô imitar as ações manuais humanas, que realizam o passo a passo de um teste dentro de um sistema, então qual a diferença de RPA para Automação de testes?

A principal diferença esta no proposito, no objetivo e não propriamente dito no meio. RPA é pensado, desenhado e projetado para automatizar processos manuais em produção com objetivo de reduzir tempo e diminuir custo de operação enquanto que a Automação de Testes tem a finalidade de repetir testes em um sistema para encontrar defeito (bugs). 

As ferramentas de Automação tradicionais rodam geralmente em homologação e os analistas de automação tem a preocupação maior em identificar e criar checkpoints em seus scripts que possam ao menor sinal de problema parar e reportar um resultado inesperado aos Testers que por sua vez irão analisar o problema e , não se tratando de uma quebra de script, abrirão um defeito para que o time de desenvolvimento corrija. Sem contar que em um teste é necessário gerar evidencias da execução e dos defeitos encontrados para fins de correção e homologação.

Já o RPA é pensado para produção , ou seja, rodar em um ambiente com o minimo possível de bugs (sistema sem Bugs não existem) transformando e simplificando fluxos de trabalho repetitivos e demorados e um processo eficiente e mais econômico. Robos RPA "aprendem" rapidamente repetir uma atividade humana sem se preocupar em tratar qualquer validação ( a menos que essa faça parte da tarefa).

Outra diferença visível é que Automação de Testes esta focada em um produto (sistema) ja o RPA pode ser aplicado a um produto e processos de negocio. O publico alvo também é diferente, enquanto a automação é voltada aos testers e analistas de automação o RPA é pensado para usuários e operadores o que desobriga a necessidade de conhecimento de codificação para utilização. 

Assim como as ferramentas de automação trabalham sobre um framework, as ferramentas RPA também possuem uma arquitetura e que basicamente englobam um Studio de desenvolvimento/gravação , os Robôs e um orquestrador que colocará toda logica para rodar.



Geralmente empresas vendem uma plataforma RPA e não apenas um serviço. Listamos abaixo algumas das principais plataformas do mercado segundo a Gartner:






Assista Gratuitamente a StarEast grande conferencia sobre inovação de Testes de Software

Acontece na semana de 28 de abril a 3 de maio de 2019 a #StarEast conference na florida, uma das maiores e mais respeitadas conferencias do mundo onde grandes nomes se reúnem para falar de inovação na área de testes de software e QA. 

O Evento conta com mais de 100 palestras e treinamentos cobrindo os mais variados tópicos envolvendo qualidade de software que estão em alta no momento.

Estes são alguns dos temas abordados:
  • Testing in DevOps
  • Test Transformation
  • Test & Release Automation
  • Agile Testing
  • Testing for Developers
  • Security Testing
  • Test Strategy, Planning, and Metrics
  • Test Leadership
  • Performance Testing & Monitoring
  • Big Data, Analytics, AI/Machine Learning for Testing
Interessante que você não precisa viajar para os Estados Unidos para participar do evento. 
Nos dias 1 e 2 de maio é possivel assistir a conferencia virtual totalmente gratuita que será transmitida ao vivo para os participantes inscritos pelo site do evento. Você também pode conferir a agenda destes dias aqui!