
Evgeniy
05.07.2017
00:12:57
потому что юнит тесты это для программиста

Sergey
05.07.2017
00:12:57
а ты начал разводить
тут прикол в том что задачки в духе "хорошо ложится на юнит тесты" придумать проблемы не составляет

Google

Sergey
05.07.2017
00:14:02
как и собственно тестами такие штуки покрывать
но есть куда более интересные кейсы которые не столь очевидны - и именно задачки подобного рода мне и нужны
например задачки где надо параметризованные тесты, property based testing
работа с тетьими сервисами или изоляция инфраструктуры
вот таких задачек надо

Evgeniy
05.07.2017
00:15:54
ок тут я подсказать не могу
пора пиздовать спать

Sergey
05.07.2017
00:16:00
что бы люди научились выбирать что покрывать юнитами, что интеграционными, а что еще как

Evgeniy
05.07.2017
00:16:46
так надо просто начать их писать

f4rt~
05.07.2017
00:16:50

Evgeniy
05.07.2017
00:16:54
и как получится пофиг потом улучшите

Sergey
05.07.2017
00:16:56

Google

Sergey
05.07.2017
00:17:11
с точки зрения бизнеса

Evgeniy
05.07.2017
00:18:08
с точки зрения бизнеса смысла в юнит тестах нет, а продавать типо цена внедрения новой фитчи уменьшится или рефакторинг существующей, тоже не особо
юнит тесты нужны разрабам в первую очередь и больше никому

f4rt~
05.07.2017
00:18:26
нет
а потом жалуетесь, что те кто к вам приходят не умееют в тесты)))

Sergey
05.07.2017
00:18:31

Evgeniy
05.07.2017
00:18:56
если еще e2e как ты называешь можно толкнуть бизнесу типо повторение действий и экономия что толпа обезьянок не нужна

Sergey
05.07.2017
00:19:00

Evgeniy
05.07.2017
00:19:12
это нужно только вам
если нужно делаете

Sergey
05.07.2017
00:19:31
ну то есть у тебя есть бизнесы:
1. конечный заказчик, стэкхолдеры и т.д.
2. твоя компания которая занимается разработкой

Evgeniy
05.07.2017
00:20:18
бизнесу и первой и второй компании юнит тесты не нужны
они нужны разрабам второй компании

Sergey
05.07.2017
00:20:35
1. - им не надо знать про юнит тесты и т.д. Им надо что бы фичи внедрялись быстро.
2. - им надо что бы клиент был всегда хэппи, что бы небыло проблем с управлением ресурсами, что бы на проект можно было закинуть нового челика, и он не зафакапил все.

Evgeniy
05.07.2017
00:20:35
и это печальный факт юнит тестов

Sergey
05.07.2017
00:21:03
ты как-то примитивно мыслишь
юнит тесты - это средство. Как CI сервер или git
ты ж git не продаешь

Evgeniy
05.07.2017
00:21:29
да
именно

Google

Sergey
05.07.2017
00:21:41
а теперь смотри, есть всякие continious delivery

Evgeniy
05.07.2017
00:21:51
поэтому бизнес сюда приплетать не стоит

Sergey
05.07.2017
00:21:51
которые бизнесу ой как могут быть нужны
представь что отдел бэкэнд разработки аутсорс компании - это тоже бизнес
наши цели как маленького бизнеса:

f4rt~
05.07.2017
00:23:12
ты ж git не продаешь
многие разработчики жалуются что не могут продать бизнесу тесты, у нас есть отличный лайфхак, мы их не продаем (c)


Sergey
05.07.2017
00:23:34
- организовать более разумное управление ресурсами. Возможность скейлить команду без сильного оверхэда.
- организация более эффективного пайплайна разработки фичи. Что бы срок от "у клиента есть потребности" до "оно в продакшене" был минимален
первый пункт решается документацией и нормальной декомпозицией проекта. второй - куча вариантов. груминги нормальные, CI/CD
документация - хэндлится приемочными и юнит тестами. Для CI/CD тебе необходима отлаженная пирамида тестов
если "пишем тетсты как придется а потом будем раскхебывать", то что мы получаем:
- расходы времени на разработку повышаются существенно (в 2-3 раза) на начальный период (где-то пара месяцев).
- качество тестов без четкого общего вижена может оставлять лучшего и использовать их как документацию может уже не получиться
потому вместо такой вот спонтанности следует выробатать стратегию, как ты будешь внедрять ту или иную технику
в плане управления ресурсами есть еще техники вроде парного программирования
эти штуки тоже никто никому не продает - это внутренняя кухня


Evgeniy
05.07.2017
00:27:31
слишком много "умных" слов типо вижен и тд
http://macode.ru/

Sergey
05.07.2017
00:27:59
но я надеюсь ты меня немного хотя бы понял

Evgeniy
05.07.2017
00:28:05
Что говорят менеджеры?
Качественные продукты
Что им нужно на самом деле?

Google

Evgeniy
05.07.2017
00:28:18
100% покрытие кода юнит-тестами
Что мы делаем в итоге?

Sergey
05.07.2017
00:28:24
ясно
ты не понял

Evgeniy
05.07.2017
00:28:27
Мы пишем код блять!
я тебя понял
но вопрос получения вижена вещь очень расплывчатая

Sergey
05.07.2017
00:29:02

Evgeniy
05.07.2017
00:29:03
и может оказаться что вы потратите время на получения вижена
и его не получите
потому что нет критерия, получен ли вижен
это субьективно

Sergey
05.07.2017
00:29:30
то что это субъективно не значит что критериев нет
этим и хороши штуки типа воркшопов, подкрепленных код ревью

Evgeniy
05.07.2017
00:29:55
ок есть критерии
код ревью да

Sergey
05.07.2017
00:30:14
воркшопы позволяют команде в контролируемых условиях "попробовать" штуки

Evgeniy
05.07.2017
00:30:20
но опять же пока его проводят люди у которых одинаковый вижен

Sergey
05.07.2017
00:30:22
код ревью предоставляет контроль

Evgeniy
05.07.2017
00:30:30
которых достаточно чтобы ревьюить код

Google

Sergey
05.07.2017
00:30:35
а еще есть статистика регрессий, кучи метрик из джирки

Evgeniy
05.07.2017
00:31:05

Sergey
05.07.2017
00:31:06

Evgeniy
05.07.2017
00:31:10
ты правильно говоришь
я не спорю

Sergey
05.07.2017
00:31:44
нам для наших "высших целей" интересует скорость продвижения тасок по борде
от "backlog" до Done
и статистика багов + регрессий

Evgeniy
05.07.2017
00:32:34

Sergey
05.07.2017
00:32:34
есть еще всякие рут кос анализы, ретроспективы
канбаны и прочие техники для саморефлексии команды
тренинги

Evgeniy
05.07.2017
00:33:15
у нас канбан хотим
и cd
но все через жопу

Sergey
05.07.2017
00:33:39
а какой именно канбан?
ну то есть, есть канбан который люди выставляют за самодостаточный процесс

Evgeniy
05.07.2017
00:34:14
а я хз, вот синхронизация вижена будет как приготовят и расскажут

Sergey
05.07.2017
00:34:16
и есть канбан как способ оптимизации текущего процесса

Evgeniy
05.07.2017
00:34:32
типо у нас сейчас есть спринты
и сроки спринтов