TDD: What, How, and Why

How TDD can save you time, resources and nerves while developing, and how to introduce it in your project.

Hey! ๐Ÿ‘‹

I'm Alex, developer at DRIVE2.RU

I write a technical blog and online books about development. Today I want to discuss TDD and why I use it in my work.

Tzlvt Tzlvt app icon

One of the projects where I use TDD.

The most recognizable metaphor of the app is buckwheat

Chapter 1
Culture and Tests

Project without Tests

The โ€œThis is fineโ€ meme

Advantages of Testing

NO ๐Ÿ”ฅ TIME! ๐Ÿ”ฅ MERGE ๐Ÿ”ฅ TO PROD! TESTS ๐Ÿ”ฅ LATER, ๐Ÿ”ฅ AAAH!

A developer, when they hear about tight deadlines

TDD Helps Solving These Problems

The TDD cycle has 3 stages, the whole cycle should be as short as possible

Advantages of TDD

Costs

Hey, wait a minute...
What do you mean, plan ahead?

Chapter 2
How To

How to Simplify Testing

How to Find Smelly Code

How to Help Team Lead See the Benefit

How to Help Biasness See the Benefit

This will work if the project is not a prototype.

Chapter 3
Practice

Resources

Link to the resource list as a QR code: https://bespoyasov.me/slides/tdd-what-how-and-why/sources.html

Alex Bespoyasov ๐Ÿ‘‹