Pular para o conteúdo principal

Binários de Driver

Para executar automação baseada no protocolo WebDriver, você precisa configurar drivers de navegador que traduzam os comandos de automação e sejam capazes de executá-los no navegador.

Configuração automatizada

Com WebdriverIO v8.14 e versões posteriores, não é mais necessário baixar e configurar manualmente nenhum driver de navegador, pois isso é tratado pelo WebdriverIO. Tudo o que você precisa fazer é especificar o navegador que deseja testar e o WebdriverIO fará o resto.

Personalizando o nível de automação

O WebdriverIO tem três níveis de automação:

1. Baixar e instalar o navegador usando @puppeteer/browsers.

Se você especificar uma combinação de browserName/browserVersion na configuração capabilities, o WebdriverIO baixará e instalará a combinação solicitada, independentemente de haver uma instalação existente na máquina. Se você omitir browserVersion, o WebdriverIO primeiro tentará localizar e usar uma instalação existente com locate-app, caso contrário, ele baixará e instalará a versão estável atual do navegador. Para mais detalhes sobre browserVersion, consulte aqui.

cuidado

A configuração automatizada de navegador não suporta Microsoft Edge. Atualmente, apenas Chrome, Chromium e Firefox são suportados.

Se você tem uma instalação de navegador em um local que não pode ser detectado automaticamente pelo WebdriverIO, você pode especificar o binário do navegador, o que desativará o download e instalação automatizados.

{
capabilities: [
{
browserName: 'chrome', // ou 'firefox' ou 'chromium'
'goog:chromeOptions': { // ou 'moz:firefoxOptions' ou 'wdio:chromedriverOptions'
binary: '/path/to/chrome'
},
}
]
}

2. Baixar e instalar o driver usando Chromedriver, Edgedriver ou Geckodriver.

O WebdriverIO sempre fará isso, a menos que o binary do driver seja especificado na configuração:

{
capabilities: [
{
browserName: 'chrome', // ou 'firefox', 'msedge', 'safari', 'chromium'
'wdio:chromedriverOptions': { // ou 'wdio:geckodriverOptions', 'wdio:edgedriverOptions'
binary: '/path/to/chromedriver' // ou 'geckodriver', 'msedgedriver'
}
}
]
}
informação

O WebdriverIO não baixará automaticamente o driver do Safari, pois ele já vem instalado no macOS.

cuidado

Evite especificar um binary para o navegador e omitir o binary do driver correspondente ou vice-versa. Se apenas um dos valores binary for especificado, o WebdriverIO tentará usar ou baixar um navegador/driver compatível com ele. No entanto, em alguns cenários, isso pode resultar em uma combinação incompatível. Portanto, é recomendável que você sempre especifique ambos para evitar problemas causados por incompatibilidades de versão.

3. Iniciar/parar o driver.

Por padrão, o WebdriverIO iniciará e parará automaticamente o driver usando uma porta não utilizada arbitrária. Especificar qualquer uma das seguintes configurações desativará esse recurso, o que significa que você precisará iniciar e parar o driver manualmente:

Configuração manual

A seguir está descrito como você ainda pode configurar cada driver individualmente. Você pode encontrar uma lista com todos os drivers no README do awesome-selenium.

dica

Se você está procurando configurar plataformas móveis e outras plataformas de UI, dê uma olhada no nosso guia de Configuração do Appium.

Chromedriver

Para automatizar o Chrome, você pode baixar o Chromedriver diretamente no site do projeto ou através do pacote NPM:

npm install -g chromedriver

Você pode então iniciá-lo via:

chromedriver --port=4444 --verbose

Geckodriver

Para automatizar o Firefox, baixe a versão mais recente do geckodriver para o seu ambiente e descompacte-o no diretório do seu projeto:

npm install geckodriver

Observação: Outras versões do geckodriver estão disponíveis aqui. Após o download, você pode iniciar o driver via:

/path/to/binary/geckodriver --port 4444

Edgedriver

Você pode baixar o driver para Microsoft Edge no site do projeto ou como pacote NPM via:

npm install -g edgedriver
edgedriver --version # prints: Microsoft Edge WebDriver 115.0.1901.203 (a5a2b1779bcfe71f081bc9104cca968d420a89ac)

Safaridriver

O Safaridriver vem pré-instalado no seu MacOS e pode ser iniciado diretamente via:

safaridriver -p 4444

Welcome! How can I help?

WebdriverIO AI Copilot