Github flow QA и тестирование UAT

Недавно я прочитал о потоке github. Я использую gitflow на данный момент и вижу, что поток Github выглядит очень интересно, потому что он не такой тяжелый с точки зрения рабочего процесса, как gitflow.

Чего я не понимаю, так это того, что после завершения функции создается запрос на извлечение. Как эти изменения проверяются перед тем, как вернуться обратно в мастер (готовы к работе). В gitflow у меня есть задача CI/CD, как только что-то фиксируется в среде UAT ветки выпуска, обновляется среда UAT, и когда тестирование завершено и если все в порядке, изменения объединяются в мастер и развертываются. В потоке Github, где находится среда UAT?


person pantonis    schedule 18.04.2019    source источник
comment
Я также изучаю этот вопрос и до сих пор пришел к выводу, что поток Github — это стратегия ветвления, а не стратегия развертывания. После этого потребуется разработать соответствующую стратегию развертывания для филиалов PR и конкретных сред.   -  person Alex S    schedule 12.11.2019


Ответы (2)


Каждый раз, когда функциональная ветвь объединяется с основной, она должна автоматически развертываться в промежуточной среде, и именно там выполняется тестирование QA/UAT.

После завершения тестирования вы развертываете его в рабочей среде с соответствующим тегом версии.

Однако, допустим, вы только что объединили Feature1 ветку с мастером, а затем в продакшене была обнаружена ошибка. Вы создадите ветку исправлений на основе тега последней развернутой версии на главном сервере, развернете ее в промежуточной среде и выполните тестирование QA/UAT. После прохождения тестирования разверните эту ветвь исправления в рабочей среде с соответствующим тегом версии, а затем объедините ветвь исправления с основным. Теперь вы можете продолжить развертывание Feature1.

person havij    schedule 15.06.2020
comment
Как насчет нескольких команд разработчиков, каждая из которых работает в своей собственной функциональной ветке. Допустим, команда завершила работу с feature1 и снова объединилась с мастером. как команда 2, работающая над функцией 2, получает изменения функции 1? А также допустим, что функция 1 не должна быть развернута прямо сейчас, а должна быть развернута в более позднем выпуске, и до этого времени мастер был сильно изменен, поскольку ветка feature1 была создана из мастера. Как нам обновить feature1 с последними основными изменениями? мы только что объединили master в feature1? - person pantonis; 27.08.2020

Пользовательское приемочное тестирование (UAT) — это тип тестирования, выполняемого конечным пользователем или клиентом для проверки/принятия программной системы перед перемещением программного приложения в производственную среду. UAT выполняется на заключительном этапе тестирования после функционального, интеграционного и системного тестирования.

Основной целью UAT является проверка сквозного бизнес-потока. Он НЕ фокусируется на косметических ошибках, орфографических ошибках или системном тестировании. Пользовательское приемочное тестирование проводится в отдельной среде тестирования с настройкой данных, аналогичной производственной. Это своего рода тестирование «черного ящика», в котором участвуют два или более конечных пользователя. Полная форма UAT — приемочное тестирование пользователя.

person PRATIK VANI    schedule 23.01.2020