Size: a a a

JPoint, Java-конференция

2020 January 16

GK

Gregory Koshelev in JPoint, Java-конференция
Потому что нужны end-to-end тесты.

У пользователя есть потребности, которые трансформируются аналитиком в бизнес-сценарии. Тестировщики смотрят (в первую очередь) не в код, а на эти самые бизнес-сенарии.
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Мне довелось вести разработку довольно большой распределённой системы (на самом деле это несколько интегрированных между собой ИС), где не было ни одного юнит-теста (в коде, касающемся бизнеса - точно, про инфраструктурный уже не вспомню).
источник

S

Sergey in JPoint, Java-конференция
Gregory Koshelev
Потому что нужны end-to-end тесты.

У пользователя есть потребности, которые трансформируются аналитиком в бизнес-сценарии. Тестировщики смотрят (в первую очередь) не в код, а на эти самые бизнес-сенарии.
Как то обидно узнать, что что то работает не так только в самом конце
источник

GK

Gregory Koshelev in JPoint, Java-конференция
В самом конце - это где?
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Когда всё разработали?
источник

S

Sergey in JPoint, Java-конференция
Когда все собрались
источник

СЦ

Сергей Цыпанов in JPoint, Java-конференция
Sergey
Как то обидно узнать, что что то работает не так только в самом конце
Гораздо обиднее, имхо, когда все юнит-тесты зелёные, а сквозные - красные. Отдельно всё работает, а вместе - нет.
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Сергей Цыпанов
Гораздо обиднее, имхо, когда все юнит-тесты зелёные, а сквозные - красные. Отдельно всё работает, а вместе - нет.
А так обычно и бывает.
источник

GK

Gregory Koshelev in JPoint, Java-конференция
А так - это был довольно интересный и уникальный опыт. При этом команда не страдала от тех.долга (т.е. в проекте и рефакторинги были, и новые интеграции, и т.п.).
источник

СЦ

Сергей Цыпанов in JPoint, Java-конференция
Gregory Koshelev
А так обычно и бывает.
Поэтому сквозные тесты нужно начинать писать как можно раньше ;)
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Не страдала от тех.долга не в смысле, что его не было (он всегда есть), а в том, что проект жил своей жизнью, а не был написан 1 раз, чтобы больше никогда не трогать.
источник

ЕТ

Евгений Трифонов in JPoint, Java-конференция
Сергей Цыпанов
Гораздо обиднее, имхо, когда все юнит-тесты зелёные, а сквозные - красные. Отдельно всё работает, а вместе - нет.
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Разумеется, никто код from the scratch не должен идти писать. 🙂
источник

GK

Gregory Koshelev in JPoint, Java-конференция
- Ревью (тестирование) аналитики
- Ревью (тестирование) архитектуры
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Когда я сменил проект, то на новом проекте end-to-end тесты было сделать сложно, т.к. не было хорошей аналитики, а предметная область была для меня неизвестной. Поэтому пришлось прибегнуть к unit-тестированию отдельных кусочков.
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Что в итоге: ДО я писал код без очевидных багов и это же воспитывалось в коллегах-разработчиках, ПОСЛЕ (в проекте с unit-тестами) - расслабился и стал допускать очевидные ошибки в коде (у меня же типа тесты написаны - они же проверят всё за мной).
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Вот это был удивительный феномен для меня.
источник

AK

Anatoliy Korovin in JPoint, Java-конференция
Gregory Koshelev
Мне довелось вести разработку довольно большой распределённой системы (на самом деле это несколько интегрированных между собой ИС), где не было ни одного юнит-теста (в коде, касающемся бизнеса - точно, про инфраструктурный уже не вспомню).
а как разработчики проверяли что все работает так как они ожидают? когда новый функционал добавлялся. Ждали когда завезут новых E2E тестов?

просто вот сложно представить ситуацию что все настолько легко и просто и тесты нафиг не дались
источник

AK

Anatoliy Korovin in JPoint, Java-конференция
даже в сложении двух чисел можно багов понаделать, если не тестировать корнер-кейсы, а фигачить всю подряд бизнес-логику без тестов - кажется методом Чака Норриса, извините
источник

GK

Gregory Koshelev in JPoint, Java-конференция
Так это не сразу всё стало хорошо.
источник