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.