WebdriverIO 구성
Playwright vs WebdriverIO
프로젝트에서 WebdriverIO를 아직 사용하고 있지 않다면, 더 쉬운 구성과 유연한 API를 제공하는 Playwright로 시작하는 것을 권장합니다.
기본적으로 TypeScript는 프로바이더 옵션과 추가 expect
속성을 인식하지 못합니다. TypeScript가 사용자 지정 옵션에 대한 정의를 인식할 수 있도록 @vitest/browser/providers/webdriverio
를 참조해야 합니다.
/// <reference types="@vitest/browser/providers/webdriverio" />
또는 tsconfig.json
파일의 compilerOptions.types
필드에 추가할 수도 있습니다. 이 필드에 값을 지정하면 @types/*
패키지의 자동 로딩이 비활성화된다는 점에 유의하십시오.
{
"compilerOptions": {
"types": ["@vitest/browser/providers/webdriverio"]
}
}
Vitest는 동일한 파일 내의 모든 테스트를 실행하기 위해 단일 페이지를 엽니다. instances
에서 RemoteOptions
에 지정된 모든 속성을 구성할 수 있습니다.
import { defineConfig } from 'vitest/config'
export default defineConfig({
test: {
browser: {
instances: [
{
browser: 'chrome',
capabilities: {
browserVersion: 86,
platformName: 'Windows 10',
},
},
],
},
},
})
WARNING
Vitest 3 이전에는 이러한 옵션이 test.browser.providerOptions
속성에 있었습니다.
export default defineConfig({
test: {
browser: {
providerOptions: {
capabilities: {},
},
},
},
});
providerOptions
는 instances
로 대체되어 더 이상 사용되지 않습니다.
대부분의 사용 가능한 옵션은 WebdriverIO 문서에서 찾을 수 있습니다. Vitest는 WebdriverIO의 브라우저 기능만 사용하므로, 모든 테스트 러너 관련 옵션은 무시됩니다.
TIP
가장 유용한 옵션은 capabilities
객체에 있습니다. WebdriverIO는 중첩 기능을 허용하지만, Vitest는 여러 브라우저를 생성하기 위해 다른 메커니즘을 사용하므로 이러한 옵션은 무시됩니다.
Vitest는 capabilities.browserName
을 무시하므로, 대신 test.browser.instances.name
을 사용하십시오.