Как я могу интегрировать модульные тесты, которые «ломают» существующую основную ветку? - PullRequest
0 голосов
/ 09 мая 2018

Это проблема, которая случилась со мной в последние несколько месяцев. Основная ветвь репозитория, в который я добавляю, имеет несколько функций, которые не реализованы в соответствии со спецификацией; то есть, если бы было больше / правильных модульных тестов, они продемонстрировали бы, что текущая основная сборка не работает. Однако без этих тестов сборка проходит.

Конечно, в идеале нужно исправить функции и отправить запрос на извлечение для модульных тестов вместе с новой реализацией, но иногда у меня нет времени (или полномочий, или опыта), чтобы сделать это. .

Есть ли подходящий способ внести эти тесты, не исправляя сломанные функции? Travis CI будет отклонять сборки, которые не прошли тесты - даже если то, что было введено, только указывает на то, что существующий код не работает. Что могут сделать владельцы репозитория, чтобы исправить такую ​​ситуацию?

1 Ответ

0 голосов
/ 09 мая 2018

Правильный способ - не объединять эти тесты с мастерами. Вы должны оставить их в отдельной ветке, где они будут ждать исправления, которое заставит их пройти. Затем оба исправления и тесты могут быть объединены с мастером без нарушения сборки.

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

...