why bdd is misunderstood

Post on 14-Dec-2014

688 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

 

TRANSCRIPT

*

Why BDD is misunderstood?

Nicholas PufalJuraci Vieira

Oct 2013

**

Agenda

Introduction(5 min)

Common complaints(10 min)

Real life example: NY investment bank(10 min)

What BDD is really about?(10 min)

Q&A (10 min)

**

"The definition of insanity is doing the same thing over and over again and

expecting different results."~ BROWN, RITA MAE

**

**

Let's start demystifying these complaints :)

**

Client doesn't care for testing

**

Client doesn’t care for testing That sentence is true for most of the

clients

**

Client doesn’t care for testing Remember, BDD has nothing to do

with testing

**

Client doesn’t want to write the specifications

**

Client doesn’t want to write the specifications He shouldn’t be allowed to write the

specifications by himself

**

Client doesn’t want to write the specifications

Client doesn't need to interact with the tool itself

**

You can achieve the same without a business

readable DSL

**

You can achieve the same without a business readable DSL

You can just use Capybara + RSpec

**

You can achieve the same without a business readable DSL

Would you compare a car to a duck?

**

Real life example: NY investment bank

**

Real life example: NY investment bank

•Specifications written using SpecFlow (Cucumber equivalent for .NET)

•Complex business domain

•BAs (client's side) with strong knowledge about the business needs

**

We need examples to understand!

**

**

**

3 amigos session to the rescue...

**

**

**

Real life example: NY investment bank

•No QAs in the team

•3 amigos = 2 Devs + 1 BA

•2 Devs, but one with a QA mindset

*

Feature file: concise way of presenting ideas. The path to fulfill business

needs.

*

**

So, what BDD is really about?

**

BDD is a full-stack agile methodology!

**

Examples Tests

Requirements

can become

elaborate verify

Examples, requirements and tests are essentially tied together in a loop.

*

•Enough is enough

•Deliver stakeholder value

•It’s all behavior

*

The principles of BDD

**

How BDD enhances TDD?

**

"I decided it must be possible to present TDD in a way that

gets straight to the good stuff and avoids all the

pitfalls." ~ NORTH, DAN

**

Move away from the word "Test"

**

*

•Explore examples through collaboration

•Create living documentation

*

Two things about BDD

**

Questions?

*

**

Thanks!

*

Nicholas Pufale-mail: npufal@thoughtworks.comblog: http://coffeecupblog.comtwitter: @nicholaspufal

Juraci Vieirae-mail: jneto@thoughtworks.omblog: http://testenext.blogspot.com.br

top related