Hay muchos artículos sobre TDD, y me di cuenta de que todos se refieren principalmente al componente técnico de este enfoque y prácticamente no describen los principios mentales subyacentes a TDD de ninguna manera.
Por lo tanto, no quería escribir otro artículo describiendo la técnica Red-Green-Refactor. Quería profundizar un poco más en TDD y describir cómo y por qué TDD afecta el comportamiento humano.
El artículo se centrará en algunas abstracciones que son aplicables en diferentes capas de la cosmovisión y, independientemente del contexto, ayudan a lograr un buen resultado. La versatilidad de estas abstracciones, y el hecho de que incluso se aplican al proceso de codificación, me convirtió en un ferviente defensor tanto del enfoque TDD como de estas abstracciones.
Mis primeros pasos en TDD
web- 12 . 10 php CMS- Joomla Bitrix. , . CMS 2 javascript (React).
, , , , , , . , -, , TDD , , , 2013 . , , , , .
, , , , . , TDD, Professional Scrum Developer scrum.org.
, (, ) , , , CMS.
- “Test Driven Development: By Example” Kent Beck. , TDD, , - , . , , “TDD — , ”. , . …
50- , . , TDD, — , … , , . , , — , 2–5–15 . , — Example of TDD by H. Koehnemann, , acceptance test .
. , TDD , . , , TDD , TDD () .
:
(todo list)
-, TDD. /. . , , , .
, . . , - GettingThingsDone. GTD , , , , .
/ , ( ) , , , (“ ”, “ ”), . .
? , . .
. , .
Test-First Thinking
Test-first — — . , , “ ?”. test-first , . “ ”, , Agile , YAGNI KISS . , “ , ?”.
— , . , , . , , , , — , ? , . , , , . , . , ( ).
, M S.M.A.R.T. .
, — Test-First Thinking. . “ - ?”, “ , ?”, “ , ?”. , , . , , . , .
, ?
?
. , .
? GTD, , , , . , , , — .
, TDD: , … … .
, - . , , .
, , - , — . , , :
1. “ ” , . , , , ;
2. .
:
describe(‘ factorial’, () => {
it(‘ 0 ’, () => {
…
})
})
:
describe(‘factorial’, () => {
it(‘ 0’, () => {
…
})
})
GTD. . ( 3).
( ) . . , THIS IS WHY YOU SHOULDN’T INTERRUPT A PROGRAMMER The Cost of Interruption for Software Developers.
, , , — ( ) (, , email-).
, , . . () , , , “ ” ( ) .
— (, , ). , , .
. ( ? — . ) .
, TDD, — .
coverage
, , … . . , . . , .
, , , . .
( () — []). . , TDD, , , TDD , .
, TDD , . , , . , , TDD. , TDD , . PS- ( 2020) 2020.
TDD
, .
TDD , TDD :
. , , . , , , TDD .
, , -. , /, . , , , , / , , , .
TDD. TDD. “-”. , , TDD ( , , ).
. . .
- , . -.
P.S. ()
En los comentarios, noté un holívar clásico sobre los pros / contras técnicos / prácticos de TDD. Mi holivar favorito sobre este tema está aquí: https://habr.com/ru/company/jugru/blog/313514/ . Altamente recomendado.
Pero el artículo trataba sobre trucos mentales para compartir una nueva perspectiva sobre este enfoque. Quería hablar de ellos en los comentarios. Gracias.