РИТ++ 2017, Backend Conf
Зал Кейптаун, 6 июня, 10:00
Тезисы:
http://backendconf.ru/2017/abstracts/2637.html
Код наших систем со временем загнивает из-за низкого качества обратной связи, которую дают интегрированные тесты.
Под интегрированными тестами я подразумеваю юнит-тесты, прохождение или падение которых зависит более чем от одной единицы нетривиального поведения. Очень часто в индустрии мы вместо быстрых и изолированных юнит-тестов пишем тесты, которые запускают на исполнение большие объемы кода или общаются с базой данных через ActiveRecord.
...
38. 1. Вам запрещается писать любой продакшен код,
за исключением того кода который нужен для
прохождения падающего юнит-теста.
39. 1. Вам запрещается писать любой продакшен код,
за исключением того кода который нужен для
прохождения падающего юнит-теста.
2. Вам запрещается писать больше кода юнит-теста
чем достаточно для его падения. И ошибки
компиляции это падение.
40. 1. Вам запрещается писать любой продакшен код,
за исключением того кода который нужен для
прохождения падающего юнит-теста.
2. Вам запрещается писать больше кода юнит-теста
чем достаточно для его падения. И ошибки
компиляции это падение.
3. Вам запрещается писать больше продакшен кода
чем достаточно для прохождения одного
падающего юнит-теста.
45. Код, который я создаю, всегда будет моей
лучшей работой. Я не буду сознательно
допускать, чтобы мой код был дефектен, как
в поведении, так и в структуре
46. Я буду предоставлять с каждым релизом
быстрое, надежное и повторяемое
доказательство того, что каждый элемент
кода работает так, как должен
47. Я буду делать частые, небольшие релизы,
чтобы не мешать прогрессу других
48. Я буду бесстрашно и неустанно улучшать свой
код при каждой возможности. Я никогда не
буду снижать его качество
49. Я сделаю всё что смогу, для того чтобы
сохранять продуктивность самого себя и
других как можно выше. Я не буду делать
ничего, что снижает эту продуктивность
50. Я буду постоянно следить за тем, чтобы
другие могли подменить меня, и что я могу
подменить их
51. Я буду давать оценки, которые являются
честными как в их правильности, так и в
точности. Я не буду давать обещания без
уверенности в том что смогу их сдержать
52. Я никогда не перестану изучать и
совершенствовать свое ремесло
63. Что делать дальше:
Попробуйте написать изолированные тесты на ту часть системы которую
вы считаете хорошо спроектированной
64. Что дальше?
Попробуйте написать изолированные тесты на ту часть системы которую
вы считаете хорошо спроектированной
Глубоко погрузитесь в тему качества кода учась у
крутых ребят:
65. Что дальше?
Попробуйте написать изолированные тесты на ту часть системы которую
вы считаете хорошо спроектированной
Практикуйте TDD, проясняйте свои намерения, устраняйте дублирование
Глубоко погрузитесь в тему качества кода учась у
крутых ребят: