TL;DR

BDD(振る舞い駆動開発)を支えるツール。平易な文章で書いた実行可能な仕様を読み、ソフトウェアがそのとおりに振る舞うかを確かめる。

なぜ必要か

仕様を自然な文章で書き、それをそのまま自動テストとして実行できる。仕様書とテストコードを二重に管理せずに済む。

仕組み

シナリオは Gherkin という文法で書き、ふつうは .feature ファイルに置く。Gherkin は、平易な文章を Cucumber が解釈できるように構造化するための文法規則である。

シナリオの各行(ステップ)は、ステップ定義によってプログラムのコードに結び付けられる。ステップ定義は JavaScript など複数の言語で書ける。Cucumber はシナリオごとに、成功か失敗かを報告する。

関連

出典