BDD has got a bit conflated with acceptance testing in the PHP community because of tools like Behat and Codeception. BDD is more about workflow and mindset rather than tooling. To understand BDD, we must go back to its origins and see how it evolved out of the need to fix common problems in TDD.