🔥

Тред (Назим Гафаров)


Победило тестирование. Начнем с обсуждения того, из-за чего чаще всего возникают баги на фронте. ⬇️

99% багов возникают на стыке систем. Условно говоря , на фронте все ок, на бэке все ок, а баги возникают в процессе их взаимодействия. Бэкенд поменял формат ответа и забыл вас об этом предупредить - и все сломалось. Поэтому в первую очередь решите вопросики с бэкендом.

Научите бэкендеров версионировать API и расширять ручки без ломающих изменений. Естественно, доверять на слово нельзя. Должны быть автоматические проверки всех ответов бэкенда на соответствие схеме. В GraphQL это работает из коробки.

Если же у вас Swagger, то можно взять любой JSON-валидатор, т.к. формат ответа Swagger это обычная JSON Schema и вы можете взять условный github.com/ajv-validator/… для валидации всех ответов. Чтобы не нагружать клиент, лучше это делать внутри BFF или на стейдже.