Del via


Anbefalinger til løbende integration

Gælder for denne Power Platform anbefaling af Well-Architected Operational Excellence-tjekliste:

OE:04 Optimer processer til softwareudvikling og kvalitetsstyring ved at følge gennemprøvede fremgangsmåder for udvikling og test i branchen. Du kan få en klar rolleangivelse ved at standardisere fremgangsmåder på tværs af komponenter, f.eks. værktøjer, kildekontrol, programdesignmønstre, dokumentation og vejledninger til typografi.

Indførelse af kontinuerlig integration/kontinuerlig levering (CI/CD) kan øge udviklingskompleksiteten for selvlærte udviklere. Men en skalerbar og automatiseret udviklingsproces, der hurtigt kan indarbejde nye funktioner og fejlrettelser, er vigtig for at opnå en pålidelig og effektiv udviklingsproces til sammensmeltning.

Som udvikler kan du foretage mindre kodeændringer, flytte disse ændringer til et kodelager og få næsten øjeblikkelig feedback om kvaliteten, testdækning og introduktionen. Denne proces giver dig mulighed for at arbejde hurtigere og med større selvtillid og mindre risiko. Kontinuerlig integration er en praksis, hvor kildekontrolsystemer og implementeringspipelines er integreret for at levere automatiserede build-, test- og feedbackmekanismer til softwareudviklingsteams.

Vigtigste designstrategier

Løbende integration er en praksis for softwareudvikling, som udviklere bruger til at integrere softwareopdateringer i et kildestyringssystem med jævnlige mellemrum.

Den kontinuerlige integrationsproces starter, når en tekniker opretter en GitHub pull-anmodning for at signalere til CI-systemet, at kodeændringer er klar til at blive integreret. Ideelt set validerer integrationsprocessen koden i forhold til flere udgangspunkter og test. Derefter giver den anmodende tekniker feedback om status for disse test.

Hvis den grundlæggende kontrol og test går godt, produceres og faser i integrationsprocessen, som implementerer den opdaterede software. Disse aktiver omfatter kompileret kode og beholderbilleder.

Løbende integration kan hjælpe dig med at levere software af høj kvalitet hurtigere ved at udføre følgende handlinger:

  • Kør automatiserede test mod koden for at sikre hurtig registrering af de seneste ændringer.
  • Kør kodeanalyse for at sikre kodestandarder, kvalitet og konfiguration.
  • Kør kompatibilitets- og sikkerhedskontroller for at sikre, at softwaren ikke omfatter kendte sikkerhedsrisici.
  • Kør accept- eller funktionstest for at sikre, at softwaren fungerer som forventet.
  • Giv hurtig feedback på registrerede problemer.
  • Du kan, hvor det er relevant, udarbejde aktiver eller pakker, der kan implementeres, som indeholder den opdaterede kode.

Miljøer

Miljøkonfiguration og -konfiguration er vigtige for at opnå pålidelig CI/CD. Power Platform-miljøer kan konfigureres til at isolere forskellige faser i løsningsudvikling, test og installation. I CI/CD-processen flyttes ændringer gennem disse faser. Opret en miljøstrategi med vejledende principper for udviklermiljøer.

Kontinuerlig integrations-pipelines

Hvis du vil opnå løbende integration, skal du bruge værktøjer til at administrere, integrere og automatisere processen. En kontinuerlig integrations-pipeline leverer:

  • En platform til kørsel af automatiserede tests
  • Scanninger af overholdelse
  • Rapportering
  • Alle andre komponenter, der udgør den kontinuerlige integrationsproces

I de fleste tilfælde er pipelinesoftwaren knyttet til kildekontrolelementet, så når der oprettes pullanmodninger, eller software flettes ind i en bestemt forgrening, kører pipelinen til kontinuerlig integration. Integration af kildekontrolelement giver også mulighed for at give feedback fra CI direkte på pull-anmodninger.

Mange løsninger, f.eks. Azure Pipelines eller GitHub-handlinger, giver funktionerne i pipelines til løbende integration. Få mere at vide i Byg CI/CD med Azure til Microsoft Power Platform.

Integration af kildekontrol

Integration af din pipeline til løbende integration med kildekontrolsystemet er nøglen til at aktivere hurtige bidrag til selvbetjeningskoder.

CI-pipelinen kører på en nyligt oprettet pullanmodning. Pipelinen omfatter alle test, sikkerhedsanalyser og andre kontroller. Resultaterne af CI-test vises direkte i pull-anmodningen, så der er næsten realtidsfeedback på kvaliteten.

En anden folkelig praksis er at bygge små rapporter eller badges, der kan vises i kildekontrolelementet for at gøre den aktuelle build-status synlig.

I følgende billede vises integrationen mellem GitHub og en Azure DevOps pipeline. I dette eksempel udløser oprettelsen af en pull-anmodning pipelinen. Pipeline-status vises i pull-anmodningen.

Skærmbillede af et Azure DevOps status badge i et GitHub-lager.

Testintegration

Et nøgleelement i den kontinuerlige integration er den konstante opbygning og test af kode, når udviklere bidrager med kode. Test af pull-anmodninger, efterhånden som de oprettes, giver omgående feedback om, at der ikke er sket de seneste ændringer i forbindelse med ikrafttrædelsen. Fordelen er, at testene i pipelinen til kontinuerlig integration kan være de samme test, der køres under en testbaseret udvikling.

Eksempel på diagram over kontinuerlig integration.

Kvalitetskontroller efter brugerdefineret kode

Når brugerdefineret kode inkluderes i løsningerne, skal du føje kodekvalitetskontroller til en valideringspipeline for at sikre, at der bruges ren brugerdefineret kode til kildekontrol. Uanset hvilket kodningssprog og syntaksmønster du bruger, er der flere muligheder for at vedligeholde kodekvalitet og øge sikkerheden og styringen.

Mislykkede tests

Mislykket test bør midlertidigt blokere en installation og føre til en mere detaljeret analyse af, hvad der er sket. Mislykket test skal også enten medføre en finjustering af testene eller en forbedring af den ændring, der medførte, at testene mislykkedes.

Power Platform-processtyring

Pipelines har Power Platform til formål at demokratisere administration af programlivscyklus (ALM) for Power Platform og Dynamics 365-kunder ved at bringe ALM-automatisering og funktioner til kontinuerlig integration og kontinuerlig levering (CI/CD) ind i tjenesten.

Microsoft Power Platform Build Tools til Azure DevOps kan bruges til at automatisere almindelige build- og udrulningsopgaver, der er relateret til apps, der er bygget på Power Platform.

GitHub Actions til Power Platform gør det muligt for udviklere at bygge automatiserede arbejdsgange for softwareudvikling. Med GitHub-handlinger for Microsoft Power Platform kan du oprette arbejdsprocesser i dit lager for at bygge, teste, pakke, frigive og installere apps, udføre automatisering og administrere bots og andre komponenter, der er bygget på Microsoft Power Platform.

ALM Accelerator er et open source-værktøj, der består af et sæt applikationer, scripts og pipelines designet til at automatisere den kontinuerlige integrations-/kontinuerlige leveringsproces.

Automatiser test med Azure Pipelines.

Power Apps checker Web API indeholder en mekanisme til at køre statiske analysekontroller i forhold til tilpasninger og udvidelser til platformen Microsoft Dataverse .

Microsoft Power Platform CLI (PAC CLI) er et kommandolinjeværktøj, der understøtter import og eksport af Power Platform løsninger samt pakning til og udpakning fra Power Platform løsningskildefiler. PAC CLI er tilgængelig som et selvstændigt kommandolinjeværktøj eller som en udvidelse til Visual Studio Code.

Næste trin