Software Development Tutorial - What is test-driven development (TDD)?

preview_player
Показать описание

#SoftwareDevelopment
#HowTo
#LinkedIn
Рекомендации по теме
Комментарии
Автор

Been going through hours of presentations for TDD but this video which was only 4 minutes long helped me rather than disorient me

Catnugget
Автор

That's the best simple and short explanation of TDD I've ever seen.

eliasshikhalshabab
Автор

That was extremely articulate and very much to the point. Thank you for the well thought out explanation.

brewhog
Автор

Thanks a lot.
I've just seen 5 videos on TDD and couldn't understand what it was about until I watched yours!

kaoutar-el-allam
Автор

I watched the full 1h50m thing, and I thought it was very well done. I *recommend* it. I didn't know much about TDD beforehand.

nonporous
Автор

3:04 If you caught yourself doing this as a developer, then you've already made the mistake of not breaking the problem into manageable pieces. For example, a function should do only one thing and one thing only. If it ends up doing more than it should, then you failed software design. This leads to spaghetti code, which prompts the management to force developers to adopt TDD, which is only a remedy to the symptom and not the cause. You should always, in my honest opinion, know what a piece of software is going to be used for, write the code, and then test if the software fulfills the intended purpose.


For example, I want to make a simple AI agent in a video game. Its only purpose is to aim at the player if it spots him/her and shoots. That's it. So I break that problem down: turret scan, turret aim, turret shoot. Three functions. Write each function, and test each function accordingly. Does the turret scan when idle? Does it aim at the player when he is in front of it? Does the turret shoot if it is aiming at the player? It's simple, really.


Writing tests to _then_ write your code is ass-backward. It's like wind-tunnel testing a plane that doesn't even exist yet, nor determined to even work.

OmegaF
Автор

The most helpful info that I have received from Linkedin

richardramirez
Автор

Short and sweet explanation. Your teaching is amazing!

RY-itlm
Автор

I am crazy about his accent and the way he teaches. He is awesome

mhkarimi
Автор

I saw "A introduction to oop"(or something like that) years ago with Simon Allardice. Still the best course I think I have ever seen on programming.

chordfunc
Автор

IMO the most important rule of TDD!

As I like to say, it's TDD not DDT.

tonyb
Автор

Simon is phenomenal! I'm loving his Objective-C Essential Training on Lynda.com.

JonathanRose
Автор

As a dev this is almost impossible unless you are doing very basic code like the example, complex apps use a lot of framework and design patterns that it is impossible to do tests before code, and there is no reason for a dev not to know what to do, there are sessions with business analysts and tech design docs before development. Another approach of TDD i encountered is instead of writing unit tests 1st, you list all the possible test cases with the help of the QA, this as a developer will be your guide so that you won't miss any logic, it's actually easier.

nonamespls
Автор

Hi, great presentation on TDD.
I'm using Java for a project, hence I'm using JUnit as testing framework, and I enjoy the feature where the testing framework auto-generates a test-class from a respective object I'm going to test. This saves time. Time is important for fx my fictive boss Mr. "quantity over quality".
The object in question will ofcourse have the basics like a constructor, getters and setters. The object is suppose to be encapsulated and contain validation in it's setter methods.
Apart from auto-generating the testClass, and respective methods, I'm trying make tests fail, and reactively icrement validation logic in the object.
Would you, or anyone else reading this, say that this approach in some way fails to adhere to the test-first principle? The reason I'm asking is because I'm writing a school project, and want to clarify if I have misunderstood something :)

heinileanderovason
Автор

Simon is Bae. Michael Hartl also does a very good job at explaining Testing in his Rails tutorial.

DecaSpace
Автор

2:37 "If it doesn't fail, we have some other kind of problem going on"
Yeah, my code writing itself

alejandroalemanhernandez
Автор

It's a shame this course is not accessible on the new LinkedIn platform.
I wish they had just left lynda.com as it was instead of trying to redirect everything.

lindascoon
Автор

this makes sense... going over to lynda.com now..

cappie
Автор

Foundations of Programming: Test Driven Development (Not Foundations of Programming Unit Testing)

Unit Testing but not TDD

Wrong Way
Step 1: write logic

Step 2: then write test

Right way:
Step 1: Write test

Step 2: Write Logic

Before we write any new code, we first write tests it keeps us centered

ariannabasha
Автор

The course is a 5 years old now, is it still relevant...can somebody help :)

siddharthsharma
join shbcf.ru