ddd with behat teaser

10
DDD with Behat Teaser by Anton Serdyuk

Upload: anton-serdyuk

Post on 15-Jan-2015

260 views

Category:

Software


1 download

DESCRIPTION

Teaser for my upcoming conference talk here https://www.facebook.com/events/600891746698048/

TRANSCRIPT

Page 1: DDD with behat teaser

DDD with Behat Teaserby Anton Serdyuk

Page 2: DDD with behat teaser

Agile project and team evolution

1 2 3 4 5 6

Page 3: DDD with behat teaser

1. No tests at all

● You can write very good code, but this code WILL suck later

● “Refactoring” is a swearword● That is why constant “No time for

refactoring”● “We need to rewrite it from scratch” at the

end

1 2 3 4 5 6

Page 4: DDD with behat teaser

2. So called “Unittests”

● Not actual unittests● xUnit based tests for controllers, entities,

repositories etc without any order● Complex fixtures● Hard to support● “There is no time for tests” because of no

visible profit

21 3 4 5 6

Page 5: DDD with behat teaser

3. Selenium acceptance tests

● Written by QA automators usually in Java even in PHP and .NET projects

● This approach is widely spread, well known and may perform well, but I think autotests implementation is not a QA job

1 2 4 5 63

Page 6: DDD with behat teaser

4. Behat acceptance tests

● This approach may perform very well● Can be written by QA (and even sometimes by BA)● Some people call it BDD, but it is not BDD actuallyGiven there is registered user Bob

And I am on homepage

When I follow “Sign Up”

And I fill “Bob” in “Username”

And I press “Sign Up”

Then I should see “This username is already in use”

1 2 3 5 64

Page 7: DDD with behat teaser

5. BDD

● BDD is not about tests● It is the process to find out and deliver features which

provide value to users● Should be used not only in dev team but in whole team

beginning from Product Owner

Given there is registered user Bob

When I try to sign up with username “Bob”

Then I should get error that this user is already signed up

1 2 3 4 65

Page 8: DDD with behat teaser

6. Lean

● The last point of Agile team and project journey

● It is all about how to deliver more value to customer and how to build sustainable business around this product

1 2 3 4 5 6

Page 9: DDD with behat teaser

4,5. DDD with Behat

● Not a BDD yet● Not just acceptance tests with Behat

BDD

Behat acceptance tests

DDD with Behat

Page 10: DDD with behat teaser

Coming soon...

● 8/28/2014● PHP User Group Meetup #9● Imaguru Startup Hub● https://www.facebook.

com/events/600891746698048/