Playwrightを使用したE2Eテストでは、BASIC認証がかかっている試験環境やメンテナンス画面が表示されている本番環境でのテストを行うことが可能か調べてみました。
BASIC認証のテスト
1. BASIC認証の設定
Playwrightでは、BASIC認証を通過するための設定が簡単に行えます。具体的には、テストの設定ファイル(playwright.config.ts
)で認証情報を指定することができます。以下はその一例です:
1 2 3 4 5 6 7 8 9 10 11 12 13 |
// playwright.config.ts import { defineConfig } from '@playwright/test'; export default defineConfig({ use: { httpCredentials: { username: 'your_username', password: 'your_password', }, }, }); |
この設定により、テスト実行時に自動的に認証が行われ、BASIC認証がかかっているページにアクセスできるようになります。
メンテナンス画面のテスト
2. メンテナンス画面の表示
メンテナンス画面が表示されている環境でも、管理者としてログインすることでページの閲覧が可能です。Playwrightでは、ログイン処理を自動化することができるため、管理者アカウントを使用してメンテナンス画面にアクセスすることができます。
例えば、以下のようにログイン処理を記述することができます:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 |
import { test, expect } from '@playwright/test'; test('Admin login and access maintenance page', async ({ page }) => { await page.goto('<https://example.com/login>'); await page.fill('input[name="username"]', 'admin'); await page.fill('input[name="password"]', 'admin_password'); await page.click('button[type="submit"]'); // メンテナンス画面に遷移 await page.goto('<https://example.com/maintenance>'); expect(await page.isVisible('text=メンテナンス中')).toBeTruthy(); }); |
このように、Playwrightを使用することで、BASIC認証やメンテナンス画面に対するテストを効率的に実施することができます。
まとめ
Playwrightを用いたテストでは、BASIC認証がかかっている試験環境やメンテナンス画面が表示されている本番環境でのテストが可能です。認証情報を設定することで、テストを自動化し、管理者としてのアクセスを確保することができます。これにより、実際の運用環境に近い形でのテストが実現でき、品質保証に寄与します。
参考サイト

Playwrightで遊んでみた|nishioka_shinji
はじめに 個人的にPlaywrightが気になっており、ちょっと触って遊んでみました。 Fast and reliable end-to-end testing for modern web apps | PlaywrightCross-b...
VS CodeとPlaywrightを使ったE2Eテストの実施
技術開発チーム・運用技術開発担当(通称opdev)の辰已です。opdevは社内のさまざまなプロダクトの開発・保守運用を行っており、日々業務効率改善、ハートビーツの価値向上に繋がる技術開発・情報発信を行っています。先日、opdevで開発した社...

E2EテストをPlaywightで実装するときの考え方 - Markerise Engineer Blog
はじめに Playwightとは、ChromiumやWebKitなどのレンダリングエンジンの操作を自動化してE