Gherkin記法
がーきんきほう

Gherkin記法(ガーキン記法)とは、ソフトウェアの振る舞いを Given(前提)・When(操作)・Then(結果)の 3 ステップで自然言語風に記述するための構造化フォーマットである。テスト自動化ツール Cucumber が読み取る .feature ファイルの標準記法として広く使われている。
なぜ Gherkin なのか
テスト仕様書を開発者がコードで、ビジネス側が日本語や英語のドキュメントで、それぞれ別々に管理する現場は多い。仕様変更のたびに両方を更新する必要があり、ズレが蓄積する。
Gherkin記法はこの問題を「実行可能な仕様書」というアプローチで解決する。ビジネス担当者が読める自然言語に近い構文でありながら、そのまま自動テストとして実行できる。仕様書とテストコードが同一ファイルに収まるため、乖離が構造的に起きにくい。
基本構文
.feature ファイルの典型的な構造は以下のとおり。
1Feature: ユーザーログイン
2
3 Scenario: 正しい認証情報でログインできる
4 Given ログインページを表示している
5 When メールアドレス "user@example.com" を入力する
6 And パスワード "correct-password" を入力する
7 And ログインボタンをクリックする
8 Then ダッシュボードが表示されるFeature が機能単位のまとまり、Scenario が個別のテストケースに対応する。And / But で条件を追加でき、Scenario Outline + Examples テーブルでパラメータ化も可能。
日本語を含む 70 以上の自然言語に対応しており、キーワードをそのままローカライズできる点も特徴の一つ。
BDD との関係
Gherkin記法は BDD(振る舞い駆動開発)のプラクティスから生まれた。BDD では「ソフトウェアが何をすべきか」を利害関係者全員が共有できる形で記述することを重視する。Gherkin はその記述フォーマットを標準化したもので、Cucumber・Behave・SpecFlow といったフレームワークが Gherkin ファイルをパースしてテストを実行する。
筆者のチームでは受け入れテストを Gherkin で書き始めてから、QA と開発者のレビュー会議で「この Scenario が通ればリリース可」という合意形成が格段に速くなった。
導入時の落とし穴
万能ではない。ステップ定義(Given/When/Then の裏側で実行される実装コード)の粒度設計を誤ると、似たようなステップが大量に増殖して保守コストが跳ね上がる。また、UI の細かい操作を Gherkin で逐一書くと冗長になりがちで、E2Eテストのすべてを Gherkin 化するより、ビジネスルールの検証に絞って適用するほうが費用対効果は高い場合が多い。
関連用語

AI ROI(AI投資対効果)
AI ROIとは、AI導入・運用に投じたコストに対して得られた業務効率化・収益改善などの効果を定量的に測定する指標のこと。

AIオブザーバビリティ(AI Observability)
本番稼働中のAIシステムの入出力・レイテンシ・コスト・品質を継続的に監視・可視化する運用プラクティス。ハルシネーションやドリフトの早期検出に不可欠。

BPO(ビジネス・プロセス・アウトソーシング)
BPOとは、企業が特定の業務プロセスを外部の専門業者に委託するアウトソーシング形態のこと。AI活用による自動化と組み合わせたAIハイブリッドBPOが近年注目されている。

ERP(エンタープライズ・リソース・プランニング)
ERP(エンタープライズ・リソース・プランニング)とは、財務・購買・製造・人事などの基幹業務データを一元管理し、経営意思決定を支援する統合型業務管理システムのこと。