Cucumber is a tool that supports Behavior Driven Development (BDD). It allows writing automated tests in a natural language format called Gherkin. Cucumber reads executable specifications written in Gherkin and verifies that the software behaves as described. It generates reports indicating whether each test scenario passed or failed. Gherkin scenarios use keywords like "Given", "When", "Then" to describe initial contexts, events, and expected outcomes. Step definitions connect the Gherkin steps to code that implements the test behavior. Cucumber helps involve non-technical stakeholders and focuses testing on the user experience.