2015-07-07 5 views
1

Я в настоящее время следую за постоянно популярным потоком git, описанным here.Какую ветку git я должен выполнить модульные тесты?

Одна вещь, которую он не обсуждает, - это то, как обрабатывать модульное тестирование. Скажем, я пишу код и фиксирую его на develop. Я хочу написать для него тест, но я не хочу этого в своей истории develop. Я бы хотел, чтобы тесты были раздельными, так что, когда я смотрю git log, я вижу только изменения основного кода. Однако, если я передам тест отдельной ветке test, мне придется объединять развёртывание/тестирование взад и вперед постоянно, что приводит к смехотворному объему беспорядка слияния.

Как вы управляете модульным тестированием в репозитории git?

+5

'Я хочу написать для этого тест, но я не хочу этого в моей истории развития'. тесты являются частью разработки. когда кто-то проверяет ваш PR/branch/tag/commit/whatever, они должны иметь возможность запускать все тесты и видеть, что ваша работа работает. Тесты обычно находятся в выделенной папке, а основные источники - в другой. Вы можете 'git log' в главной папке или фильтровать любой инструмент git, который вы используете, чтобы видеть только изменения в коде. (Однако изменение кода должно сопровождаться изменением тестов) – njzk2

ответ

7

Модульные тесты являются частью вашего исходного дерева: они развиваются по мере развития вашего кода, а ветви функций имеют свои собственные модульные тесты, которые эволюционируют по мере развития функций. Нет причин держать их в отдельной ветке.

Обратите внимание, что git log принимает параметр пути, поэтому, если вы хотите избежать просмотра записей только для проверки, вы можете выполнить фильтрацию в этой точке. Обычно я сохраняю свои исходные папки отдельно и смежными, поэтому я могу легко или просто увидеть изменения в том или ином виде, указав git log src или git log testsrc.

Смежные вопросы