BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage Presentations TDD as if You Meant It

TDD as if You Meant It

Bookmarks
52:50

Summary

Keith Braithwaite conducts a tutorial class on TDD based on the following technique: Add a test, See it fail, Make all tests pass, Refactor, and Repeat until done.

Bio

Keith Braithwaite is a Principal Consultant with Zuhlke Engineering in London. He also manages their Centre for Agile Practice. This group provides training, coaching, mentoring, toolsmithing, and straightforward development to enhance client teams’ capabilities.

About the conference

Agile Cambridge 2011 is for anyone who wants to successfully apply or learn more about Adopting and evolving agile approaches; Agile software development; Agile product management; Agile testing; DevOps/Agile Operations; User experience and design in an agile world; Agile technical communications; Coaching and mentoring agile teams; Leadership; Tool and technology adoption; Distributed agile teams. The focus throughout the event is on sharing practical experience of these topics, in a range of sessions from beginner to expert.

Recorded at:

Jan 13, 2012

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • Brilliant

    by Chris Matts,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Keith

    One of the best videos I have watched on InfoQ. I love the simplicity of the approach. Like skiing though, it is harder to do than to understand.

    As I watched the video I was struck how many of the approaches started with the inputs. It would be interesting to see what would happen if you restricted the exercise to start with the output.

    Test 1. A winning board.
    Test 2. An incomplete board.
    Test 3. A board in stalemate.

    I wonder if the developers would get caught up on the complexity of the internals that way?

    Anyway, great session.

    Chris

  • Poor - where was the benefit of instructors experience?

    by Conor Moran,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    To me, that was: Here's the rules - go figure it out yourselves.
    Some of the guys tried and failed - esp those guys with the 3*3 array....did they learn a lot? My guess is they learned to be turned off TDD.

    Thought he could have given a few better hints + pointers, especially when they were trying to get out of the blocks.
    Also would love to have been told at the end what Keith thought a good first test might be, and some reasons why.

    I'd also suggest Keith read "Growing object oriented software, guided by tests".
    (And/or www.jmock.org/oopsla2004.pdf)
    Many notions in TDD have moved on and evolved some since the days of Kent Beck.

  • Slides link is broken

    by Demetrius Nunes,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    The Slides download link gives Access Denied, even if I am logged in. The mp3 download is fine.

  • Where is Keith's code sample

    by steve lin,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Hi Keith,

    Thank you for your presentation. Ideally, I would like to have your code sample. Other readers might think so too.

  • Re: Poor - where was the benefit of instructors experience?

    by Keith Braithwaite,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Conor

    Steve Freeman and Nat Pryce, the authors of GOOS, both have attended the workshop a couple of times (Nat was in this session in Cambridge!) They and I are quite aligned on how TDD works and has developed. Nat and I have used this workshop together at other conferences to address various aspects of TDD.

    Keith

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT