How Your Team Can Benefit from TDD

  • Fewer Bugs

    Stop wasting time fixing bugs and spend more time on new features, creating software that's valuable for your users.

  • Flexible Code

    Steer the design of your code from tests. Increase modularity, flexibility and the effectiveness of your systems.

  • Better Design

    Quickly design code that is more maintainable and more adaptable to change.

THIS COURSE WILL GIVE YOU:

  • A better understanding of TDD and BDD, and how they combine together to improve the quality of your code.

  • The skills to write long-lasting tests that are resilient to changes in the code.

  • The knowledge to “listen to the code” and use the feedback from test creation to modify your designs for the better.

  • A 60% reduction in bugs in production.

  • More job satisfaction and time to build the software that you want to build.

  • Highly sought after Software Engineering skills that may enhance your job prospects.

  • AND MORE...

Course curriculum

    1. Course Preview

      FREE PREVIEW
    2. Welcome to TDD & BDD - Design Through Testing

    3. My Learning Objectives

    1. Continuous Delivery Principles

    2. What is Test Driven Development?

    3. Red, Green, Refactor!

    4. Unit Testing and the Properties of Good Tests

    5. Practising Testing

    6. Demo: Getting Started with TDD - String Calculator - Step 1

    7. Exercise 1: Getting Started with TDD - String Calculator

    8. Demo: Getting Started with TDD - String Calculator - Steps 2 & 3

    9. Learning Review 1: What Have We Learned About TDD So Far?

    1. TDD and the Properties of Good Tests

    2. Information Sheet 1 - The Properties of Good Tests

    3. Three Types of Test in TDD

    4. Exercise 2: Dealing with Exceptions

    5. Demo: Dealing with Exceptions

    6. The Importance of Dependency Injection

    7. Mocking and Dependencies

    8. Exercise 3: Dependency Injection

    9. Demo: Dependency Injection

    10. More on Mocking

    11. Testing at the Edges

    12. Learning Review 2 - How to Write Great Tests

    1. BDD & The Importance of Naming

    2. The Shape of Your Tests

    3. Exercise 4 - Part 1 - How Tests Improve Design

    4. Demo: How Tests Improve Design - Part 1

    5. Exercise 4 - Part 2 - How Tests Improve Design

    6. Demo: How Tests Improve Design - Part 2

    7. Learning Review 3 - TDD & Behaviour Driven Development

    1. Modern Software Engineering - Focus on Design

    2. Common Design Problems and Their Solutions

    3. Information Sheet 2 - Fixing Common Design Problems

    4. Exercise 5 - Thinking Not Just Coding

    5. Demo: Thinking Not Just Coding (Part 1)

    6. Demo: Thinking Not Just Coding (Part 2)

    7. The Importance of Refactoring

    8. Refactoring - TDD in Legacy Systems

    9. Listening to the Code

    10. Common TDD Smells

    11. Information Sheet 3 - TDD Smells: Anti-Patterns and their Solutions

    12. Acceptance Test Driven Development

    13. TDD Top Tips

    14. Learning Review 4 - TDD & Design

    1. Congratulations!

    2. Information Sheet 4 - Course References and Useful Links

    3. My Feedback

    4. Collection of Information Sheets

About this course

  • £599.00
  • 49 lessons
  • 5.5 hours of video content

Test Driven Development WILL Work For You

If you think that TDD can't work for you because... 

  • Your code structure is too inflexible
  • You don't have time to spend writing tests
  • Your boss won't go for it


Think Again!

You BUILD BETTER SOFTWARE FASTER When... 

  • You invest time in writing tests rather wasting time debugging production systems.
  • Your code is easier to change because it is better designed.
  • You can make progress with more confidence, and break free from legacy constraints.
  • Confident teams suffer less burn-out and enjoy higher job satisfaction scores.


What Our Customers Say

Siemens Healthcare

“After applying TDD to a new feature on a single team in a code base area where lots of production bugs were discovered in the past, we were able to deliver that feature without any production bugs.”

Valuable Training

“Valuable training on TDD and software engineering. I strongly recommend this course to anyone interested in making better software. This is not just about writing good tests, it is also (and before anything else) about design and software engineering in general. Be prepared to change your mind on several topics.”

Covers Everything You Need

“Everything you need to understand what TDD really is and how it works. The course is well structured. It helps go with your own pace. It covers everything you need in order to start with TDD, and to do it right. I can't be more satisfied.”

Life-Changing!

“That was what it took to push me into TDD, and it's just life-changing. So just for pushing me into that realm, thank you from the bottom of my heart. My code is forever changed. :-)”

Sold Me on the Benefits of TDD

"Before taking this course, I was skeptical of TDD and had little understanding of BDD. However, the tools and exercises provided in the course were what truly sold me on the benefits of TDD. They illustrated how starting with a test-first approach could significantly improve the development process.”

Instructor

Founder of Continuous Delivery Ltd. Dave Farley

Dave Farley, is the managing director and founder of Continuous Delivery Ltd. Dave is co-author of the best-selling books - "Continuous Delivery" and "Modern Software Engineering" describing a coherent, foundational and durable approach to effective software development, for programmers, managers and technical leads, at all levels of experience. He is one of the authors of the Reactive Manifesto and a winner of the Duke Award for the open source LMAX Disruptor project. Dave is a pioneer of Continuous Delivery, thought-leader and expert practitioner in CD, DevOps, TDD and software design, and has a long track record in creating high-performance teams, shaping organisations for success, and creating outstanding software. Dave is committed to sharing his experience and techniques with software developers around the world, helping them to improve the design, quality and reliability of their software, by sharing his expertise through his consultancy, YouTube channel, books and training courses.