Upgrade to Pro — share decks privately, control downloads, hide ads and more …

BDD Failures

BDD Failures

When trying to make BDD working for you projects, there always can be some failures. Presentation from Women In Technology Silesia, Gliwice, 12.06.2014.

Dariusz Drobisz

June 12, 2014
Tweet

Other Decks in Technology

Transcript

  1. What BDD is not? • tests (it’s just a part

    and great artifact) • Behat
  2. What BDD is not? • tests (it’s just a part

    and great artifact) • Behat • RSpec
  3. What BDD is not? • tests (it’s just a part

    and great artifact) • Behat • RSpec • Jasmine
  4. What BDD is not? • tests (it’s just a part

    and great artifact) • Behat • RSpec • Jasmine (they are tools)
  5. “Behaviour-driven development is about implementing an application by describing its

    behaviour from the perspective of its stakeholders” Dan North
  6. What BDD is? Story BDD Describing high level business application

    behaviour. Spec BDD Describing low level implementation behaviour.
  7. Stakeholders (not)involvement Customer: I’m not sure what I need. Developer:

    So what problem you wan’t to resolve? C: I don’t know exactly, maybe you can tell me what I should need.
  8. Stakeholders (not)involvement • they are undecided • they don’t involve

    in process of user stories creation • the even don’t wan’t to look at it • let everything up to developer
  9. B(a)DD way - example #2 I know your business so

    let me write TECHNICAL scenarios for you.
  10. Technical scenarios Feature: In order to buy product As a

    user I need to be able to add product to cart
  11. Technical scenarios Scenario 1: Given I am on the homepage

    When I follow “Products” And I fill in “Count” by “2” beside “Product 1” And I click “Add to cart” beside “Product 1” And I follow “My cart” ….
  12. Technical scenarios Scenario 1: Given I am on the shop

    When I add “Product 1” to cart Then I should see “Product 1” in my cart
  13. My only right way!!! A decisive person in project …

    … with technical knowledge … … without understanding of what BDD is for.
  14. My only right way!!! I was doing that tests for

    years I was doing that in different way, other tools I liked it better, why are you doing this that way Don’t use that!
  15. My only right way!!! CRASH Tool and methodology you were

    using to design system behaviour gone away :(
  16. Stories/specs everywhere. • Trying to describing everything - including 3rd

    party libraries • To huge amount of time for BDD
  17. Stories/specs everywhere. • Trying to describing everything - including 3rd

    party libraries • To huge amount of time for BDD • Last adventure with BDD at work :(
  18. Summary • Need to change people thinking • Need pople

    involvement • Need good will • Need openness of mind • Need understanding