Cucumber (cetriolo) è un prodotto Open Source che supporta
Behaviour-Driven Development (sviluppo guidato dal comportamento).
Quando si sviluppa un prodotto software si desidera che esso possegga
determinati comportamenti. Questi ultimi possono essere descritti in
linguaggio naturale e scritti in Gherkin: un insieme di semplici regole
grammaticali. Tali comportamenti possono essere espressi nella forma di
criteri di accettazione.
Implementando un conveniente strato di codice è possibile "indurre" il
comportamento descritto sul prodotto software, verificando se il
comportamento effettivamente dimostrato dal prodotto software sia
accettabile o non accettabile.
Cucumber automatizza l'esecuzione dei test di accettazione a partire
dalla lettura del comportamento espresso in linguaggio naturale.