Есть ли способ запустить тесты в ветке git, работая над другой? - PullRequest
6 голосов
/ 17 июня 2011

У меня есть большой набор тестов, который необходимо запустить, прежде чем я отправлю свои изменения обратно в репозиторий, используемый CI. В идеале я хотел бы использовать следующий рабочий процесс:

  • Создание ветки для разработки функции или исправления ошибки;
  • Разработайте функцию в этой ветке, используя TDD, но выполняя только самые явно связанные тесты;
  • После завершения разработки запустите весь набор тестов;
  • Пока я запускаю весь набор тестов (20 минут), я хотел бы запустить другую функцию в другой ветке.

Если я делаю git checkout, вся моя рабочая копия меняется на эту ветку, поэтому я не могу запустить свои тесты. Возможно, мне следует использовать 2 рабочие копии, но я бы предпочел более элегантное решение.

редактировать: опечатка

1 Ответ

5 голосов
/ 17 июня 2011

Для этого вам нужно будет сделать вторую рабочую копию; Учтите, что вашей следующей реализованной функцией может быть не новая ветка, а вместо этого используется существующая ветка или ветвь, основанная на другой ветке (все, что означает, что вы будете проверять код, который отменяет вашу последнюю реализацию функции во время выполнения теста).

Вы можете создать сценарий для обработки всего этого - возможно, вы закончите разработку текущей функции, а затем запустите сценарий "buildandtesteverything {featurebranchname}". Скрипт переместится в каталог, в котором находится корень вашего git-репозитория, клонирует репозиторий во временную папку (проверяя именованную ветвь), а затем выполнит ваши тесты и очистит после себя.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...