Season Running - Ep. 03: Rodandando seus testes web em paralelo com o Pabot
Fala robotizadores! O que acham de rodar os seus testes do Robot Framework mais rápido? Isso é possível executando todos eles ao mesmo tempo em paralelo! Neste artigo vamos falar sobre o Pabot, um executor que vai rodar todos os seus testes ao mesmo tempo!
01 - Instalação
Vamos começar com a instalação:> pip install -U robotframework-pabot
02 - Configurando seus arquivos
Para rodar seus testes em paralelo, é preciso que cada Teste Case esteja em um arquivo separado. O Pabot não consegue dividir testes dentro de um mesmo arquivo. No nosso exemplo vou utilizar a tela de login do site https://the-internet.herokuapp.com/login. Esse site tem vários exemplos para você usar como estudo de automação web. Vamos fazer o login no Chrome e Firefox ao mesmo tempo.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*** Settings *** | |
Resource steps_login.robot | |
Suite Teardown Close browser | |
*** Test Cases *** | |
Cenário: Login com sucesso | |
Dado que estou na tela de login no Chrome | |
Quando realizo o login | |
Então devo visualizar a mensagem "You logged into a secure area!" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*** Settings *** | |
Resource steps_login.robot | |
Suite Teardown Close browser | |
*** Test Cases *** | |
Cenário: Login com sucesso | |
Dado que estou na tela de login no Firefox | |
Quando realizo o login | |
Então devo visualizar a mensagem "You logged into a secure area!" |
Notem que a única diferença entre os arquivos é o browser. O arquivo de implementação é o mesmo para os dois casos
steps_login.robot
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
*** Settings *** | |
Library SeleniumLibrary | |
*** Variables *** | |
${url} https://the-internet.herokuapp.com/login | |
*** Keywords *** | |
Dado que estou na tela de login no ${browser} | |
open browser ${url} ${browser} | |
Quando realizo o login | |
input text id=username tomsmith | |
input text id=password SuperSecretPassword! | |
click button Login | |
Então devo visualizar a mensagem "${mensagem}" | |
element text should be id=flash You logged into a secure area!\n× |
03 - Executando em paralelo
Para executar os testes em paralelo não chamamos mais o robot, e sim o pabot
> pabot --processes 2 login*.robot
#FICAADICA: usem o nome dos test cases diferente do arquivo de implementação pra poder chamá-los todos com *.robot. Imaginem ter que digitar todos os arquivos diferentes...
No final ele gera o relatório para cada um dos testes
Ao rodar os testes em paralelo ele abre todos os browsers ao mesmo tempo, então cuidado com a memória!
O código está disponível no GitHUB!!!
Então galera, prontos para rodar tudo ao mesmo tempo!? Deixem seu comentário aqui embaixo!
O código está disponível no GitHUB!!!
Então galera, prontos para rodar tudo ao mesmo tempo!? Deixem seu comentário aqui embaixo!
Comentários
Postar um comentário