38 lines
2.6 KiB
Markdown
38 lines
2.6 KiB
Markdown
---
|
||
title: Test Driven Development
|
||
localeTitle: Испытательное развитие
|
||
---
|
||
## Испытательное развитие
|
||
|
||
Разработка тестового решения (TDD) является одним из подходов Agile Software Development. Он основан на концепции, что
|
||
|
||
> вы должны написать тестовый пример для своего кода еще до того, как вы напишете код
|
||
|
||
Здесь мы сначала пишем единичный тест, а затем записываем код для успешного завершения теста. Это экономит время, затрачиваемое на выполнение модульного теста и другого аналогичного теста, поскольку мы идем вперед с успешной итерацией теста, а также для достижения модульности кода. Он состоит в основном из 4 шагов
|
||
|
||
* Напишите тестовый пример
|
||
|
||
* См. Сбой теста (красный)
|
||
|
||
* Пройдите тест, пройдя любые преступления в процессе (зеленый)
|
||
|
||
* Рефакторинг кода должен соответствовать стандартам (Refactor)
|
||
|
||
Эти шаги следуют принципу Red-Green-Refactor. Red-Green убедитесь, что вы пишете простейший код, чтобы решить проблему, в то время как последний шаг гарантирует, что код, который вы пишете, соответствует стандартам.
|
||
|
||
|
||
Каждая новая функция вашей системы должна следовать вышеприведенным шагам.
|
||
|
||
![поток tdd](http://www.agiledata.org/images/tddSteps.jpg)
|
||
|
||
#### Дополнительная информация:
|
||
|
||
[Введение](http://agiledata.org/essays/tdd.html) Agile Data [в TDD](http://agiledata.org/essays/tdd.html)
|
||
|
||
Wiki по [TDD](https://en.wikipedia.org/wiki/Test-driven_development)
|
||
|
||
Мартин Фаулер [\- TDD Dead?](https://martinfowler.com/articles/is-tdd-dead/) (Серия записанных разговоров по этому вопросу)
|
||
|
||
Книга Кента Бэка « [Испытательная разработка по примеру»](https://www.amazon.com/Test-Driven-Development-Kent-Beck/dp/0321146530)
|
||
|
||
Дядя Боб [Циклы TDD](http://blog.cleancoder.com/uncle-bob/2014/12/17/TheCyclesOfTDD.html) |