This document discusses Behavior-driven Development (BDD) for testing legacy systems. It introduces BDD and compares it to other development approaches like TDD. BDD focuses on illustrating behavior through examples in a natural language. The document then addresses challenges in testing legacy systems not designed for automation. It proposes using BDD to group scenarios by context and outcome. Finally, it presents Selenium, Behave, and PyHamcrest as tools to implement BDD for legacy systems, covering features like page objects and different test levels.