Season WEB Testing - Ep. 03: Open Browser - Chrome Options
Utilizando os Options do Chromedriver
Quando você usa a Open Browser para abrir o seu navegador Chrome, por padrão ele instância um navegador "zerado" de configurações, mas se você precisa que algo seja parametrizado nesse Chrome, veja as opções que você pode usar no argumento "options" da Open Browser.
Saiba mais sobre em: https://chromedriver.chromium.org/capabilities
Você pode passar quantos options necessitar separando-os com ponto e vírgula, ficaria algo assim:
*** Keywords ***
Acessar Site
Open Browser https://the-internet.herokuapp.com/download chrome
... options=add_argument("--disable-web-security");add_argument("--start-maximized");add_experimental_option("excludeSwitches", ["enable-logging"])
Options Disponíveis
Nem todas as options existentes estão listadas aqui, se você conhece alguma que não está aqui, deixa ela descrita nos comentários, por favor!
Abrir em Aba Anônima
add_argument("--incognito")
Remover log do DevTools Chrome
add_experimental_option("excludeSwitches", ["enable-logging"])
Para sites em HTTPS, evitando alertas de certificados
add_argument("--ignore-certificate-errors")
Bloquear Pop-ups
add_argument("--disable-popup-blocking")
Bloquear Notificações
add_argument("--disable-notifications")
Iniciando já maximizado
options=add_argument("--start-maximized")
Não aplicar política de segurança
add_argument("--disable-web-security")
Configurando um diretório para download
${prefs} Create Dictionary download.default_directory=C:\\Documentos
options=add_experimental_option('prefs', ${prefs})
Instalando Extensões
Para instalar uma extensão você precisará do arquivo .crx dela, a extensão de Chrome chamada "Get CRX" gera esse arquivo para você, veja as instruções clicando aqui. Depois que você tiver esse arquivo, use o exemplo abaixo:
add_extension("path\\to\\extension.crx")
Exemplo: add_extension("C:\\ProjetosRobotFramework\\TruePath.crx")
Execução sem tela (para execução em containers) - Sugestão de Fabio Mendonça
add_argument("--headless")
Definindo tamanho da janela
add_argument("--window-size=1920,1080")
Para utilizar a renderização no formato mobile - Sugestão de Marcos Barbosa
&{mobile_emulation} Create Dictionary deviceName=Galaxy S5
Open Browser https://www.facebook.com Chrome options= add_experimental_option("mobileEmulation",${mobile_emulation})
Ou com device configurado especificamente para seu teste - Sugestão de Marcos Barbosa
&{device metrics} Create Dictionary width=${768} height=${1366} pixelRatio=${3.0} userAgent=Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19
&{mobile_emulation} Create Dictionary deviceMetrics=${device metrics}
Open Browser https://www.facebook.com Chrome options=add_experimental_option("mobileEmulation",${mobile_emulation})
E é isso ai galerinhaaaa!! Bons testes aí no seu Chrome!!! Lembrando que se souberem de mais alguma option não listada aqui, deixa nos comentários!! Até a próxima!!
--headless é bem util para execução dentro de containers
ResponderExcluirNice! Obrigada!
ExcluirFantastico. Estou iniciado os estudos e realizando os seus cursos. Obrigado
ResponderExcluirMuito boas as dicas, queria saber se alguém sabe o comando pro chrome já iniciar em modo mobile ou responsive, obrigado por enquanto e parabéns pelo blog.
ResponderExcluirSalve salve, para utilizar a renderização no formato mobile, você pode utilizar:
Excluir&{mobile_emulation}= Create Dictionary deviceName=Galaxy S5
Open Browser https://www.facebook.com Chrome options= add_experimental_option("mobileEmulation",${mobile_emulation})
Caso desejar, pode inserir um device configurado especificamente para seu teste:
Excluir```
${device metrics}= Create Dictionary width=${768} height=${1366} pixelRatio=${3.0} userAgent=Mozilla/5.0 (Linux; Android 4.2.1; en-us; Nexus 5 Build/JOP40D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19
&{mobile_emulation}= Create Dictionary deviceMetrics=${device metrics}
Open Browser https://www.facebook.com Chrome options= add_experimental_option("mobileEmulation",${mobile_emulation})
```
Adição de conteúdo realizado!! Obrigada pela contribuição Marcos!!!
ExcluirBom dia. Tudo bem? Queria saber pq o meu navegador fecha, quando faço o teste Open Browser? Isso não deve ocorrer quando inserimos o comando Close Browser? Em resumo o site não deve permanecer aberto, pq o único comando que escrevi foi o abrir o navegador? Obrigado
ResponderExcluirBom dia professora Mayara !
ResponderExcluirTudo bem ?
Estou com problema para abrir o chrome com as extensões, usando o "options=add_extension" ja tentei de diversas maneiras, mas nenhuma funciona. Achei que o problema era no arquivo CRX fiz a conversões de outras estensões e mesmo assim não consigo abrir, Tentei deixando o arquivo CRX junto com a pasta do robot e não obtive sucesso, poderia me ajudar ? vou postar as minhas tentativas aqui em baixo:
*** Keywords ***
Acessar site
Open Browser
... www.google.com
... chrome
... options=add_extension("C:\\Users\\Anderson Lima\\AppData\\Local\\Google\\Chrome\\User Data\\Default\\Extensions\\noaijdpnepcgjemiklgfkcfbkokogabh\\16.31_0.crx")
outra tentativa:
*** Keywords ***
Abrir Site
l${chrome_options}= Evaluate sys.modules['selenium.webdriver'].ChromeOptions() sys, selenium.webdriver
Call Method ${ChromeOptions} add_argument remote-debugging-port\=9222
#Call Method ${ChromeOptions} add_argument ${args}
Call Method ${ChromeOptions} add_extension ${EXECDIR}${/}app.crx
${Options}= Call Method ${ChromeOptions} to_capabilities
Create Webdriver Chrome desired_capabilities=${Options}
Go To ${URL}
Professora porque o Open Browser está fechando só ao final do teste ? e quando tenho varios testes tenho que ficar abrindo e fechando toda hora
Excluir