Playwrightでシナリオテストを自動化し、安全かつスピーディなリリースサイクルを回す
株式会社Spectee / kine
メンバー / フロントエンドエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
| ツールの利用開始時期 | 事業形態 |
|---|---|
| 2024年4月 | B to B |
| ツールの利用開始時期 | 2024年4月 |
|---|---|
| 事業形態 | B to B |
導入の背景・解決したかった問題
導入背景
ツール導入前の課題
手動テストの限界
プロジェクトが発足して以来自動テストを導入していなかったため、プロダクトオーナー(以下PO)によるシナリオテストがリリース時に手動で行われていました。半日〜1日の工数が割かれており、数か月に一回のリリースならなんとか手動テストで耐えられるかもしれませんが、リリース頻度が増え、機能が増えると、毎回の手動テストは大きな負担になります。 リリース頻度を増やして継続的に開発したものをデリバリーするためには、自動テストを導入して手動テストに割く工数を減らす必要がありました。
リリースの遅延
自動テストで不具合を検知する体制が出来ていなかったため、シナリオテストで不具合が見つかり修正作業が必要になることも頻発していました。そのため、計画通りに本番環境への反映が行われない事態が発生するだけでなく別機能の開発スケジュールにも影響が出ていました。
どのような状態を目指していたか
上記のような課題から、以下の状態を目指しました。
- リリースの安全性と高速化: 毎リリースで一定の品質を担保し、安全かつスピーディにリリースできる体制を構築する。
- 修正コストの削減: 不具合を事前に検知することで、修正にかかるコストを下げる。
比較検討したサービス
- mabl
比較した軸
- 実行速度
- 運用コスト
- 学習コストや保守性
選定理由
- 実行速度の速さ: E2EテストはフロントエンドからDB層までの一気通貫で検証を行うので実行時間が長くなりがちですが、Playwrightは実行速度が速いため、効率的にテストを行うことができます。
- 管理とレビューのしやすさ: 開発メンバーが実装・メンテナンスを行うのでコードベースのPlaywrightの方が馴染みやすいという点や、レビューの観点でも差分の確認などがしやすいというメリットがありました。
- Cucumberとの組み合わせで仕様書とテストコードを一元管理:Cucumberというテストシナリオを自然言語で書くことができるテストツールと併用することで、テストコードを仕様書としても管理することができます。当初はPOがテストを実行する想定だったため、開発メンバー以外、特にプロダクトに関わるPOにとっても内容を認識しやすいという点がメリットに感じました。
- クロスブラウザ対応: PlaywrightはChrome以外にもFirefoxやSafariに対応しています。異なるユーザー環境に合わせて検証を行える点も大きな評価ポイントでした。
- コスト: 上記に加え、Playwrightはオープンソースのため、テストが増えたとしてもCI以外でコストがかからない点も利点です。
導入の成果
改善したかった課題はどれくらい解決されたか
- 2,3か月ごとにリリースしていたものを1か月ごとのリリースに短縮されました。
- リリース直前に検知されていた不具合が開発段階で分かるようになったため、リリース直前の手戻りとそれにより起こるスケジュール遅延が8割減少しました。
- 自動化できていない機能については手動テストを行っているものの、半日以上かかっていた工数が数時間に短縮されました。
どのような成果が得られたか
- リリース時の手動テストを大幅に削減できました。
- 開発中にもテストできるようになったため早期に不具合を検知できるようになりました。
導入に向けた社内への説明
上長・チームへの説明
上記課題と自動テスト導入後の目指す状態をチーム内で共有し意思決定をしました。 私を含めチームメンバーのE2Eテストの導入経験がなかったため、以下のような「なぜE2Eテストから始めるのか」といったテスト戦略も含めて説明を行いました。
なぜE2Eテストから始めるのか
現状: 自動テストがなく、膨大な手動テストに依存する「アイスクリームコーン型(アンチパターン)」であり、リリースの足かせとなっている状態でした。

E2E導入後: 本来は単体テストから積み上げるのが理想とされているが、まずは現在の手動テストをそのまま自動化できる「E2Eテスト」を導入することで、現場の負担を最短で軽減する戦略となりました。
活用方法
よく使う機能
Playwright Inspector
要素の特定などテストを作成する際には必ず使用しています。
ツールの良い点
- 実行速度が速いです。
- オープンソースでコストがかからないです。
- Playwright Inspectorでテストが直感的に書けます。
- コードベースのため、柔軟なテストが可能です。
ツールの課題点
- テストがflakyになる場合があります。
今後の展望
- プロダクトが大きくなり機能も増えたことで、テストの実行時間が導入時より長くなってきていることに課題を感じています。並列実行などを組み込んで実行時間の短縮化を図りたいです。
- Playwright MCPも出たようなので、テストの作成自体も自動化して効率化を目指したいです。
株式会社Spectee / kine
メンバー / フロントエンドエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
よく見られているレビュー
株式会社Spectee / kine
メンバー / フロントエンドエンジニア / 従業員規模: 101名〜300名 / エンジニア組織: 11名〜50名
レビューしているツール
目次
- 導入の背景・解決したかった問題
- 活用方法

