Где хранить фиктивные файлы в проекте флаттера?
Есть ли наилучшая практика хранения фиктивных файлов во Flutter? В частности, автоматически сгенерированные фиктивные файлы, поскольку я использую@generateMocks
аннотация из пакета Mockito .
Должен ли я, например, создать пакет, предназначенный для хранения всех макетов проекта? или оставить каждый макет в тестовом пакете, который зависит от него? или есть другие подходы? за и против?
Я нашел несколько связанных вопросов для других фреймворков, и хотя это похоже на проблему, не зависящую от языка, мне интересно узнать, есть ли какие-либо рекомендации конкретно для Flutter.
2 ответа
Вы можете сохранить свои фиктивные файлы для тестирования. Если некоторые люди работают над этим проектом вместе с вами. Они могут просто вытащить проект и запустить тестирование. Но это зависит от культуры вашей команды. Я делюсь своим опытом, но не лучшей практикой для вас.
Лично я храню макеты с тестовыми файлами, которые в них нуждаются. Таким образом, у вас будет иrandom_test.mocks.dart
с@GenerateMocks
атрибут вrandom_test.dart
файл.
Плюсы
- Маловероятно, чтобы конфликт с другими во время разработки, если вы не работаете в той же области
- Легче узнать, где находятся макеты для конкретных тестов.
- Легче настраивать макеты для разных тестовых случаев.
Минусы
- Вероятно наличие повторяющегося сгенерированного кода
- Более длинные вызовы из-за повторяющейся генерации
- Больше файлов в проекте
- Это можно несколько смягчить, создав файлы по мере необходимости, а не сохраняя их в репозитории, хотя это увеличивает влияние более длительного времени.
build_runner
звонки
- Это можно несколько смягчить, создав файлы по мере необходимости, а не сохраняя их в репозитории, хотя это увеличивает влияние более длительного времени.
В общем, я не возражаю против минусов, если сравнивать с более простым циклом разработки, заключающимся в том, чтобы просто хранить макеты с конкретными тестами, которые в них нуждаются. Если вы не создаете огромное количество макетов для каждого теста, дополнительное время и повторяющаяся генерация не являются подавляющими, IMO.