Споделяне чрез


Препоръки за непрекъсната интеграция

Прилага се за тази Power Platform препоръка за контролен списък за добре проектирано оперативно съвършенство:

OE:04 Оптимизирайте процесите на разработка на софтуер и осигуряване на качеството, като следвате доказани в индустрията практики за разработка и тестване. За ясно определяне на роли стандартизирайте практиките в компоненти, като например инструменти, контрол на източника, модели за проектиране на приложения, документация и ръководства за стил.

Приемането на непрекъсната интеграция/непрекъсната доставка (CI/CD) може да увеличи сложността на разработката за гражданските разработчици. Въпреки това, мащабируемият и автоматизиран процес на разработка, който може бързо да включва нови функции и корекция на грешки, е от решаващо значение за надежден и устойчив процес на разработка на синтез.

Като разработчик можете да правите малки промени в кода, да изпращате тези промени в хранилище на код и да получавате почти мигновена обратна връзка за качеството, покритието на тестовете и въведените грешки. Този процес ви позволява да работите по-бързо и с повече увереност и по-малък риск. Непрекъснатата интеграция е практика, при която системите за контрол на източника и конвейерите за внедряване са интегрирани, за да осигурят автоматизирани механизми за изграждане, тестване и обратна връзка за екипите за разработка на софтуер.

Ключови стратегии за проектиране

Непрекъснатата интеграция е практика за разработка на софтуер, която разработчиците използват за интегриране на софтуерни актуализации в система за контрол на източника с редовен ритъм.

Процесът на непрекъсната интеграция започва, когато инженер създаде заявка за изтегляне на GitHub, за да сигнализира на CI системата, че промените в кода са готови за интегриране. В идеалния случай процесът на интеграция валидира кода спрямо няколко базови линии и теста. След това той предоставя обратна връзка на инженера, който иска, за състоянието на тези тестове.

Ако базовите проверки и тестване вървят добре, процесът на интеграция създава и поставя активи, които внедряват актуализирания софтуер. Тези активи включват компилиран код и изображения на контейнери.

Непрекъснатата интеграция може да ви помогне да доставите висококачествен софтуер по-бързо, като извършите следните действия:

  • Провеждайте автоматизирани тестове спрямо кода, за да осигурите ранно откриване на сривни промени.
  • Изпълнете анализ на кода, за да осигурите стандарти, качество и конфигурация на кода.
  • Извършете проверки за съответствие и сигурност, за да се уверите, че софтуерът не включва известни уязвимости.
  • Изпълнете тестове за приемане или функционални тестове, за да се уверите, че софтуерът работи според очакванията.
  • Осигурете бърза обратна връзка за открити проблеми.
  • Когато е приложимо, да се създадат активи или пакети за внедряване, които включват актуализирания код.

Среди

Настройката и конфигурирането на средата са от решаващо значение за устойчивия и надежден CI/CD. Power Platform Средите могат да бъдат настроени така, че да изолират различни етапи от разработването, тестването и внедряването на решения. Процесът на CI/CD придвижва промените през тези етапи. Създайте стратегия за среда с ръководни принципи за среди за разработчици.

Тръбопроводи за непрекъсната интеграция

За да постигнете непрекъсната интеграция, използвайте инструменти за управление, интегриране и автоматизиране на процеса. Непрекъснатият интеграционен тръбопровод осигурява:

  • Платформа за провеждане на автоматизирани тестове
  • Сканиране за съответствие
  • Отчитане
  • Всички останали компоненти, които съставляват процеса на непрекъсната интеграция

В повечето случаи софтуерът на конвейера е свързан към контрола на източника, така че когато се създават заявки за изтегляне или софтуерът се слива в конкретен клон, се изпълнява конвейерът за непрекъсната интеграция. Интеграцията на контрола на източника също така предоставя възможност за предоставяне на обратна връзка директно за CI заявки за изтегляне.

Много решения, като Azure Pipelines или GitHub Actions, предоставят възможностите на конвейерите за непрекъсната интеграция. Научете повече в Изграждане на CI/CD с Azure for Microsoft Power Platform.

Интеграция на контрола на източника

Интегрирането на вашия конвейер за непрекъсната интеграция с вашата система за контрол на източника е от ключово значение за осигуряване на бърз принос от код на самообслужване.

CI тръбопроводът работи с новосъздадена заявка за изтегляне. Тръбопроводът включва всички тестове, оценки на сигурността и други проверки. Резултатите от CI теста се появяват директно в заявката за изтегляне, за да позволят обратна връзка почти в реално време за качеството.

Друга популярна практика е създаването на малки отчети или значки, които могат да бъдат представени в контрола на източника, за да направят текущите състояния на компилация видими.

Следното изображение показва интеграцията между GitHub и Azure DevOps конвейер. В този пример създаването на заявка за изтегляне задейства тръбопровода. Състоянието на тръбопровода се появява в заявката за изтегляне.

Екранна снимка на Azure DevOps значка за състояние в хранилище на GitHub.

Тестова интеграция

Ключов елемент на непрекъснатата интеграция е непрекъснатото изграждане и тестване на код, тъй като разработчиците правят принос към кода. Тестването на заявките за изтегляне, докато са създадени, дава незабавна обратна връзка, че къмитът не е въвел прекъсващи промени. Предимството е, че тестовете в конвейера за непрекъсната интеграция могат да бъдат същите тестове, които се изпълняват по време на тестова разработка.

Примерна диаграма на непрекъсната интеграция.

Проверки на качеството за персонализиран код

Когато включвате персонализиран код във вашите решения, добавете проверки за качеството на кода към конвейер за проверка, за да сте сигурни, че чистият персонализиран код се ангажира с контрола на източника. Независимо от езика за кодиране и синтактичните модели, които използвате, има множество опции за поддържане на качеството на кода и повишаване на сигурността и управлението.

Неуспешни тестове

Неуспешните тестове трябва временно да блокират внедряването и да доведат до по-задълбочен анализ на случилото се. Неуспешните тестове също трябва да доведат до усъвършенстване на тестовете или до подобряване на промяната, която е довела до неуспех на тестовете.

Power Platform улесняване

Тръбопроводите Power Platform имат за цел да демократизират управлението на жизнения цикъл на приложенията (ALM) за Power Platform клиенти на Dynamics 365 чрез въвеждане на възможности за автоматизация на ALM и непрекъсната интеграция и непрекъсната доставка (CI/CD) в услугата.

Microsoft Power Platform Инструментите за изграждане могат Azure DevOps да се използват за автоматизиране на общи задачи за изграждане и внедряване, свързани с приложения, изградени на Power Platform.

Действия на GitHub за Power Platform позволяват на разработчиците да изграждат автоматизирани работни потоци на жизнения цикъл на разработката на софтуер. С действия на GitHub за Microsoft Power Platform можете да създавате работни потоци във вашето хранилище за създаване, тестване, пакетиране, пускане и внедряване на приложения; извършвате автоматизация; и управлявате ботове и други компоненти, изградени върху Microsoft Power Platform.

ALM Accelerator е инструмент с отворен код, който се състои от набор от приложения, скриптове и тръбопроводи, предназначени да автоматизират процеса на непрекъсната интеграция/непрекъсната доставка.

Автоматизирайте тестовете с Azure Pipelines.

Power Apps checker Web API Microsoft Dataverse предоставя механизъм за извършване на проверки за статичен анализ срещу персонализации и разширения на платформата.

Microsoft Power Platform CLI (PAC CLI) е инструмент от командния ред, който поддържа импортиране и експортиране на Power Platform решения, както и опаковане и разопаковане от Power Platform изходни файлове на решенията. PAC CLI се предлага като самостоятелен инструмент за команден ред или като разширение за Code Visual Studio .

Следващи стъпки