ラボ > Playwright
任意のブラウザテストを実行したい
作成日:2025-05-13, 更新日:2025-05-21
対象ファイルのみ
> npx playwright test tests/●●●/●●●.spec.js
対象のみ実行: .only
テストソース作成時の確認用に対象のみ「.only」をつければ、通常実行でOK
▼テストソース1
test.only('●●●', async ({ page }) => {
// このテストだけ実行される
});
▼テストソース2
test.describe.only('●●●', () => {
test('正常系', async () => {});
test('異常系', async () => {});
});
対象のみ除外: .skip
テストソース作成時の確認用に対象のみ「.skip」をつければ、通常実行でスキップしてくれる
▼テストソース1
test.skip('●●●', async ({ page }) => {
// このテストだけ除外される
});
▼テストソース2
test.describe.skip('●●●', () => {
test('正常系', async () => {});
test('異常系', async () => {});
});
playwright.config.jsの「projects」で設定
> npx playwright test --project=basic
playwright.config.js
▼Globパターン(文字列)
projects: [
{
name: 'basic',
testMatch: '*login-basic.spec.ts',
},
{
name: 'vip-member',
testMatch: [
'blog/make.spec.ts',
'topics/*-edit.spec.ts', // 「topics/●●●-edit.spec.ts」...ただのワイルドカード
'**/remove.spec.ts', // 「remove.spec.ts」「●●●/remove.spec.ts」「●●●/●●●/remove.spec.ts」...再帰的なディレクトリ階層。自身・子・孫の階層までを対象。
'*/remove.spec.ts', // 「●●●/remove.spec.ts」
],
}
]
▼「.*」のような正規表現の記述もOK
projects: [
{
name: 'basic',
testMatch: /.*login-basic.spec.ts/,
},
{
name: '2fa',
testMatch: /.*login-2fa-.*/,
}
]
ブラウザ指定
▼「--project=●●●」
> npx playwright test --project=chromium