Halo, nama saya Dmitry Karlovsky. Dan Anda berada di saluran Core Dump , tempat kami mengambil berbagai topik dari ilmu komputer dan mendekonstruksinya di rak. Kami akan mulai dengan pengembangan berbasis pengujian.
Pengembangan Berbasis Tes
Inti dari pendekatan ini adalah meritualkan proses pembangunan. Yaitu, dalam eksekusi tanpa syarat tanpa syarat dari tindakan sederhana tertentu.
Ritual ini akan membuat kode Anda indah dan dapat diandalkan. Perawatannya akan mudah dan sederhana. Dan pengembangan akan menjadi sederhana dan cepat. Bagaimanapun, hal ini sangat diyakinkan oleh para pengkhotbah TDD.
Rekaman video dari analisis ini .
Inti dari TDD
Singkatnya, siklus ritual terdiri dari 3 langkah: pertama, tes merah tertulis; kemudian kode ditulis atau dikoreksi sehingga tes berubah menjadi hijau; dan akhirnya kode tersebut direfraktorisasi agar pengujian tetap kehijauan.

Dan kemudian pertanyaan segera muncul, pertanyaan tentang sejuta ...
Apa yang harus dilakukan saat tes awalnya berwarna hijau?
Opsi jawaban ...
- Pecahkan kodenya
- Hapus tes
- Tidak mungkin
Jika Anda memecahkan kode Anda, tes Anda secara alami akan berubah menjadi merah. Dan setelah kami mengembalikan perubahan, tes akan berubah menjadi hijau lagi.
Anda dapat menghapus tes tersebut. Toh, jika tidak ada pengujian, maka tidak ada masalah dengan warna aslinya.
, : 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?
, , ..
..
- -
, . .
- , , - , .
. .