behat, behavioral driven development (bdd) in php

Post on 10-May-2015

574 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

In order to improve the software development process you should use the language of the domain you are modeling. Behat, a tool for Behavior Driven Development in PHP, can help in the communication with the domain-expert / product-owner.

TRANSCRIPT

BDD, using Behat from Use Case to implementation

Herman Peeren8 mei 2014, 010PHP

Developing software not easy

improved a bit over the years:

Waterfall

Waterfall vs Agile

iterations (sprints)

Waterfall vs Agile

DDDTDDBDD

Sapir–Whorf hypothesis

Linguistic relativity:

Structure of a language affects the ways in which its respective speakers conceptualize their world.

голубой

Wilhelm von Humboldt Franz Boas Edward Sapir

Nelleke Verhoeff, Red Cheeks Factory,

Nelleke Verhoeff, Red Cheeks Factory,

DDD

ubiquitous language:

using the language of the domain you are modeling

TDDTests afterwards are boring, I like to create new things!

TDDTests first!

Some recent TDD critics

•architecture destroyed by unit-level-tests•easy to measure doesn’t mean it’s important

David Heinemeier Hansson (‘DHH’)http://www.confreaks.com/videos/3315-railsconf-keynote

James Coplien (‘Cope’)www.rbcs-us.com/documents/Why-Most-Unit-Testing-is-Waste.pdf

BDD

Dan Northhttp://dannorth.net/introducing-bdd/

Functional testing

Seleniumhttp://docs.seleniumhq.org/

Selenium in PHPUnithttp://phpunit.de/manual/current/en/selenium.html

Acceptence testing

Behathttp://behat.org/

Behat

•based on Cucumber (Gherkin language)•given - when - then

Behat: define features

steps suggestions

define steps

Minkhttp://mink.behat.org/

Codeceptionhttp://codeception.com/

No Gherkin-language, but PHP (new WebGuy)

top related