More and more software developers and companies are looking to adopt testing as a way to improve the quality and stability of written code.
Behavior-driven development (BDD) is a technique that was created to try to improve communication between business/product and engineering, enabling business/product to better contribute to software specification so that engineering can use these specifications to write code.
When applied to automated testing, BDD offers some "best practices" for writing great tests.
BDD can, and should, be used in conjunction with Test Driven Development and Unit Testing techniques, as it offers detailed specifications that will be extremely useful in the test writing process.