Configurando WebdriverIO
Playwright vs WebdriverIO
Se você ainda não utiliza WebdriverIO em seu projeto, recomendamos começar com Playwright, pois sua configuração é mais simples e sua API é mais flexível.
Por padrão, o TypeScript não reconhece as opções do provedor nem as propriedades adicionais de expect
. Para que o TypeScript possa reconhecer as definições das opções personalizadas, certifique-se de incluir a referência a @vitest/browser/providers/webdriverio
:
/// <reference types="@vitest/browser/providers/webdriverio" />
Alternativamente, você também pode adicioná-lo ao campo compilerOptions.types
em seu arquivo tsconfig.json
. Note que especificar qualquer item neste campo desativará o carregamento automático de pacotes @types/*
.
{
"compilerOptions": {
"types": ["@vitest/browser/providers/webdriverio"]
}
}
O Vitest utiliza uma única página para executar todos os testes contidos no mesmo arquivo. Você pode configurar qualquer propriedade especificada em RemoteOptions
dentro de instances
:
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
browser: {
instances: [
{
browser: 'chrome',
capabilities: {
browserVersion: 86,
platformName: 'Windows 10',
},
},
],
},
},
})
WARNING
Antes do Vitest 3, essas opções estavam localizadas na propriedade test.browser.providerOptions
:
export default defineConfig({
test: {
browser: {
providerOptions: {
capabilities: {},
},
},
},
});
providerOptions
foi descontinuado e substituído por instances
.
Você pode encontrar a maioria das opções disponíveis na documentação do WebdriverIO. Observe que o Vitest ignorará todas as opções do executor de testes, pois utilizamos apenas as capacidades de navegador do webdriverio
.
TIP
As opções mais úteis estão disponíveis no objeto capabilities
. O WebdriverIO permite capacidades aninhadas, mas o Vitest ignorará essas opções, pois utilizamos um mecanismo diferente para abrir múltiplos navegadores.
Note que o Vitest ignorará capabilities.browserName
. Use test.browser.instances.name
em seu lugar.