🎭
Playwrightでテスト対象のブラウザを設定する
▮Playwright
E2Eのテストフレームワークである。
▮前提条件
以下を参考にPlaywright Test for VSCodeを導入済
環境
- VS code: 1.66.2 (user setup)
- Node.js: 16.13.0
- OS: Windows_NT x64 10.0.18363
- Playwright: Version: 1.21
- Playwright Test for VSCode: v0.2.3
▮Bofre After
Before | After | |
---|---|---|
スクリーンショット | ||
テスト対象ブラウザ | chromium、firefox、webkit | chromium |
▮1. playwright.config.tsのprojects:を変更する
操作
- [エクスプローラ]
playwright.config.ts
を開く。 - [テキストエディタ]以下の通りに、コードを 変更後 に変更する。
変更前
playwright.config.ts
/* Configure projects for major browsers */
projects: [
{
name: 'chromium',
use: {
...devices['Desktop Chrome'],
},
},
{
name: 'firefox',
use: {
...devices['Desktop Firefox'],
},
},
{
name: 'webkit',
use: {
...devices['Desktop Safari'],
},
},
/* Test against mobile viewports. */
// {
// name: 'Mobile Chrome',
// use: {
// ...devices['Pixel 5'],
// },
// },
// {
// name: 'Mobile Safari',
// use: {
// ...devices['iPhone 12'],
// },
// },
/* Test against branded browsers. */
// {
// name: 'Microsoft Edge',
// use: {
// channel: 'msedge',
// },
// },
// {
// name: 'Google Chrome',
// use: {
// channel: 'chrome',
// },
// },
],
変更後
playwright.config.ts
/* Configure projects for major browsers */
projects: [
{
name: 'chromium',
use: {
...devices['Desktop Chrome'],
},
},
/* 'firefox'をテストしない */
// {
// name: 'firefox',
// use: {
// ...devices['Desktop Firefox'],
// },
// },
/* 'webkit'をテストしない */
// {
// name: 'webkit',
// use: {
// ...devices['Desktop Safari'],
// },
// },
/* Test against mobile viewports. */
// {
// name: 'Mobile Chrome',
// use: {
// ...devices['Pixel 5'],
// },
// },
// {
// name: 'Mobile Safari',
// use: {
// ...devices['iPhone 12'],
// },
// },
/* Test against branded browsers. */
// {
// name: 'Microsoft Edge',
// use: {
// channel: 'msedge',
// },
// },
// {
// name: 'Google Chrome',
// use: {
// channel: 'chrome',
// },
// },
],
確認
- [ターミナル]以下のコマンドを実行する。
npx playwright test
- [ターミナル]以下の出力を確認する。
PS C:\Playwright_sample> npx playwright test
Running 25 tests using 1 worker
Slow test file: [chromium] › example.spec.ts (60s)
Consider splitting slow test files to speed up parallel execution
25 passed (1m)
To open last HTML report run:
npx playwright show-report
PS C:\Playwright_sample>
※ 以下のエラーが発生した場合には、playwright-reportがすでに存在していることが原因である。
Error in reporter Error: EPERM: operation not permitted, mkdir 'C:\Playwright_sample\playwright-report'
at Object.mkdirSync (fs.js:921:3)
at new HtmlBuilder (C:\Playwright_sample\node_modules\@playwright\test\lib\reporters\html.js:188:17)
at HtmlReporter.onEnd (C:\Playwright_sample\node_modules\@playwright\test\lib\reporters\html.js:96:21)
at Multiplexer.onEnd (C:\Playwright_sample\node_modules\@playwright\test\lib\reporters\multiplexer.js:74:45)
at Runner.runAllTests (C:\Playwright_sample\node_modules\@playwright\test\lib\runner.js:204:5)
at runTests (C:\Playwright_sample\node_modules\@playwright\test\lib\cli.js:194:18)
at Command.<anonymous> (C:\Playwright_sample\node_modules\@playwright\test\lib\cli.js:83:7) {
errno: -4048,
syscall: 'mkdir',
code: 'EPERM',
path: 'C:\\Playwright_sample\\playwright-report'
}
その場合には、以下のコマンドを再度実行する。
npx playwright test
- [ターミナル]以下のコマンドを実行する。
npx playwright show-report
-
[ブラウザ]ブラウザが起動して、テスト結果の表示を確認する。
-
[ブラウザ]
New Todo › should allow me to add todo items
をクリックする。 -
[ブラウザ]
Chromium
のみでテストが実行したことを確認する。
Discussion