Hola, mi nombre es Dmitry Karlovsky. Y estás en el canal Core Dump , donde tomamos diferentes temas de la informática y los deconstruimos en los estantes. Comenzaremos con el desarrollo basado en pruebas.
Desarrollo basado en pruebas
La esencia de este enfoque es ritualizar el proceso de desarrollo. Es decir, en la ejecuciĂłn acrĂtica incondicional de determinadas acciones sencillas.
Este ritual hará que su código sea hermoso y confiable. Será fácil y sencillo de mantener. Y el desarrollo será simple y rápido. Esto, en todo caso, está fuertemente convencido por los predicadores de TDD.
Grabación de video de este análisis .
La esencia de TDD
En resumen, el ciclo ritual consta de 3 pasos: primero, se escribe la prueba roja; luego, el cĂłdigo se escribe o se corrige para que la prueba se vuelva verde; y finalmente el cĂłdigo se refactoriza para mantener las pruebas verdosas.
Y luego surge inmediatamente la pregunta, la pregunta de un millĂłn ...
¿Qué hacer cuando la prueba es inicialmente verde?
Opciones de respuesta ...
- Rompe el cĂłdigo
- Eliminar prueba
- Es imposible
Si rompe su código, sus pruebas naturalmente se volverán rojas. Y después de revertir el cambio, las pruebas volverán a ponerse verdes.
Puede eliminar la prueba. Después de todo, si no hay prueba, entonces no hay problema con su color original.
, : TDD . - , . , .
, , : — . , , TDD.
, . , : " ?". . — . , " ", . - , ?
, TDD , - , , . , . .
— , , 2 . ?
. , , . TDD , , , , , -, . .
- R ⇝ G
- R ⇝ G
- R ⇝ G
- G ?
- G ?
- G ?
- G ?
- G ?
, TDD, , . , . , .
, TDD: , .
TDD
, , TDD ...
" ?". , . . . , . , , . , . , .
. , . , . , .
, , , " ?". , — , — -. , . , .
TDD . ...
TDD
TDD , . , .
...
1 | R | R | G |
2 | GR | RR | GG |
3 | GGR | RRR | GGG |
4 | GGGR | GGRR | GGGG |
5 | GGGGR | GGGGR | GGGGG |
6 | GGGGGR | RRRRRR | GGGGGG |
. , , . , , . .
, - , . TDD - .
, , . . " , ". , , .
TDD
TDD , . ..
, , , .
, , , , , . , TDD, . , Test Driven, .
, TDD - . , TDD . .
TDD?
- , " TDD", , , . TDD , . , .
- :-(
- :-(
- :-(
- , :-)
- :-)
TDD, TDD . , , . , , - . TDD. — . - . , , , .
TDD?
, , ..
..
- -
, . .
- , , - , .
. .