PHPUnit является фактическим стандартом для UnitTesting в PHP.
Он может выполнять BD Testing в ограниченной степени:
Класс PHPUnit_Extensions_Story_TestCase добавляет структуру истории, которая упрощает определение предметно-ориентированного языка для разработки, основанной на поведении. Внутри сценария, given (), when () и then (), представляют каждый шаг. и () того же типа, что и на предыдущем шаге. Следующие методы объявлены абстрактными в PHPUnit_Extensions_Story_TestCase и должны быть реализованы:
runGiven (& $ world, $ action, $ arguments) ... runWhen (& $ world, $ action, $ arguments) ... runThen (& $ world, $ action, $ arguments) ...
Изменить: Более сложной альтернативой может быть Cucumber с Бехат
PHPSpec - это среда разработки на основе поведения для php. Я сам еще не использовал его, поэтому я не могу его конкретно комментировать.