VS Code 拡張機能のテスト
WebdriverIOを使用すると、VS Code拡張機能をVS Codeデスクトップ IDEまたはWeb拡張機能としてシームレスにエンドツーエンドでテストできます。拡張機能へのパスを提供するだけで、フレームワークが残りの処理を行います。wdio-vscode-service
によって、すべてが処理されるだけでなく、さらに多くの機能があります:
- 🏗️ VSCodeのインストール(安定版 、インサイダー版、または指定したバージョン)
- ⬇️ 特定のVSCodeバージョンに対応するChromedriverのダウンロード
- 🚀 テストからVSCode APIにアクセスする機能
- 🖥️ カスタムユーザー設定でのVSCodeの起動(Ubuntu、MacOS、WindowsのVSCodeをサポート)
- 🌐 またはWeb拡張機能のテスト用にVSCodeをサーバーから提供
- 📔 VSCodeバージョンに合わせたロケーターを持つページオブジェクトのブートストラップ
始めるには
新しいWebdriverIOプロジェクトを開始するには、次のコマンドを実行します:
npm create wdio@latest ./
インストールウィザードが手順をガ イドします。どのようなテストを行いたいかを尋ねられたら、必ず_「VS Code拡張機能のテスト」_を選択し、その後はデフォルトのままにするか、好みに合わせて変更してください。
設定例
このサービスを使用するには、サービスのリストにvscode
を追加し、必要に応じて設定オブジェクトを続けます。これによりWebdriverIOは指定されたVSCodeバイナリと適切なChromedriverバージョンをダウンロードします:
// wdio.conf.ts
export const config = {
outputDir: 'trace',
// ...
capabilities: [{
browserName: 'vscode',
browserVersion: '1.71.0', // 最新のVSCodeバージョンには "insiders" または "stable"
'wdio:vscodeOptions': {
extensionPath: __dirname,
userSettings: {
"editor.fontSize": 14
}
}
}],
services: ['vscode'],
/**
* オプションでWebdriverIOがすべてのVSCodeとChromedriverバイナリを
* 保存するパスを定義できます。例:
* services: [['vscode', { cachePath: __dirname }]]
*/
// ...
};
browserName
がvscode
以外(例えばchrome
)でwdio:vscodeOptions
を定義すると、サービスは拡張機能をWeb拡張機能として提供します。Chromeでテストする場合、追加のドライバーサービスは必要ありません:
// wdio.conf.ts
export const config = {
outputDir: 'trace',
// ...
capabilities: [{
browserName: 'chrome',
'wdio:vscodeOptions': {
extensionPath: __dirname
}
}],
services: ['vscode'],
// ...
};