На мой взгляд существует путаница в понятиях функциональный/приёмочный/юнит тест. Например в данной статье Владимир Янц как бы ставит знак равенства между функциональными и приёмочными тестами. В понимании фреймворка codeception — это разные виды тестов (https://codeception.com/docs/01-Introduction). Я считаю, разделение приёмочных и функцильнальных тестов полезно, поскольку начинаешь понимать, что между приёмочными и юнит-тестами существует разновидность тестов, не таких меддленных, как приёмочные, но при этом не таких чувствительных к изменениям архитектуры, как юнит-тесты. И вот такими «функциональными» (с точки зрения фреймворка codeception) тестами можно пользоваться с самого начала и не страдать при рефакторинге.
1) Черногория и Сочи поинтереснее Подмосковья будет, разве нет? А трудности… мы к ним относимся как к приключениям и возможности выкрутиться из них сообща
2) Компания оплачивает перелёт и жильё — это львиная доля расходов, особенно для сотрудников из далёких от Москвы регионов. В сравнении с этим дополнительные расходы на активности — копейки.
3) Большую часть этих вещей выполняют сотрудники HR отдела, продакт помогает, почему нет. Может быть это для вас прозвучит дико, но разработчики у нас тоже занимаются организацией досуга — каждый берёт на себя какую-то ответственность — кто-то футбол организует и везёт мячик с собой, кто-то настольные игры, шашлыки и прочее. Я считаю это нормально, что каждый принимает участие.
C4ET4uK Верно подмечено, если бы 1) мы писали на статически-типизированном языке и 2) добавили бы небольшой оверхед в виде интерфейсов на каждый класс, на который нужен мок, то да, эта проблема бы ушла. И всё же, это не главная проблема. Для нас очень важен подход разработки через тестирование, которые меняет мышление — заставляет отвлечься от деталей реализации и подумать о конечном результате. Моки ломают этот настрой — заставляли задумываться о реализации. Это серьёзный недостаток.
UI пытались тестировать с помощью phantomjs и headless chrome, тогда использовали Codeception framework для этого. Для ангуляра — Protractor. Но в итоге отказались от UI тестов из-за частых false positive срабатываний и очень низкой скорости.
Information
Rating
Does not participate
Location
Благовещенск (Амурская обл.), Амурская обл., Россия
Спасибо за статью, многое стало понятнее. Плюсик поставить уже не могу, но хоть так поблагодарить ))
Андрей, расскажи, как ты успеваешь всё это!
2) Компания оплачивает перелёт и жильё — это львиная доля расходов, особенно для сотрудников из далёких от Москвы регионов. В сравнении с этим дополнительные расходы на активности — копейки.
3) Большую часть этих вещей выполняют сотрудники HR отдела, продакт помогает, почему нет. Может быть это для вас прозвучит дико, но разработчики у нас тоже занимаются организацией досуга — каждый берёт на себя какую-то ответственность — кто-то футбол организует и везёт мячик с собой, кто-то настольные игры, шашлыки и прочее. Я считаю это нормально, что каждый принимает участие.