Skip to content

Um exemplo prático para utilizar o Robot Framework com Selenium e BrowserMobProxy.

Notifications You must be signed in to change notification settings

ArlissonSena/easy-BrowserMobProxyLibrary

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 

Repository files navigation

RobotFramework-BrowserMobProxyLibrary

Um exemplo prático para utilizar o Robot Framework com Selenium e BrowserMobProxy.

Introdução

BrowserMobProxyLibrary é uma biblioteca para Robot Framework. Mais sobre BrowserMob Proxy.

Eu tive que utilizar a biblioteca com o uso do Robot Framework e Selenium e vi apenas um exemplo prático de como utiliza-la, por conta disso, resolvi criar um template que pode ser usado e replicado de maneira simples.

BrowserMob Proxy é um utilitário simples para capturar dados de desempenho para aplicativos web (por meio do formato HAR), além de manipular o tráfego e o comportamento do navegador, whitelisting e blacklisting, simular tráfego de rede e latência e reescrever solicitações e respostas HTTP.

Mais informação sobre essa biblioteca pode ser encontrado na Keyword Documentation.

Dependências (Importante)

Além da instalação das ferramentas citadas você precisará configurar o browser que deseja usar para realizar a captura do tráfego.

O Artur Spirin descreve como instalar os certificados do BrowserMobProxy. (Uma vez o teste realizado remova o certificado do Browser por ele não ser seguro)

Ele tem um video ensinando como fazer isso para Chrome ou para Firefox

Exemplo

Exemplo fácil já configurado:

*** Settings ***
Library         SeleniumLibrary
Library         Collections
Library         OperatingSystem
Library         BrowserMobProxyLibrary

*** Variables ***
${BROWSER}      Chrome
${PAGE_URL}     https://www.google.com


*** Test Cases ***
Coletando o tráfego do google e salvando num arquivo file .har 
    #Iniciando servidor local na porta escolhida
    Start Local Server              <path para o binário do browsermob-proxy>
    &{port}                         Create Dictionary       port=<defina uma porta para comunicação>
    ${BrowserMob_Proxy}=            Create Proxy            ${port}
    ${options}=                     Evaluate                sys.modules['selenium.webdriver'].ChromeOptions()    sys, selenium.webdriver
    Call Method                     ${options}              add_argument       --proxy-server\=localhost:8086
    
    #Cria webdriver do Chrome com as opções do servidor local 
    Create WebDriver    ${BROWSER}    chrome_options=${options}

    #Inicia coleta do tráfego
    New Har             <nome_do_har>

    Go To               ${PAGE_URL}
    Title Should Be     Google
    
    #Coleta o tráfego de network e cria arquivo .har como um json
    ${har}=             Get Har As Json
    Create File         ${EXECDIR}${/}<nome_da_pasta>/<nome_do_arquivo>.har     ${har}

    #Finaliza o servidor local
    Stop Local Server
    Close All Browsers

About

Um exemplo prático para utilizar o Robot Framework com Selenium e BrowserMobProxy.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • HTML 99.7%
  • RobotFramework 0.3%