Dela via


Att tänka på vid distribution och testning för intelligenta programarbetsbelastningar

Upprätthåll en felfri ALM-process (Application Lifecycle Management) för att undvika produktionsproblem och snabbt åtgärda eventuella regressioner.

Fastställ din ALM-strategi

Se till att utvecklingsprocessen är effektiv och skalbar genom att utveckla en omfattande ALM-strategi som omfattar versionskontroll, kontinuerlig integrering/kontinuerlig distribution (CI/CD) och automatiserad testning.

Utvärdera alternativ från enkel till avancerad CI/CD:

  • Manuell distribution av lösningar.
  • Automatiserad distribution med användarvänliga pipelines i Power Platform (ingen källkontroll).
  • Automatiserad distribution + källkontroll med Azure DevOps eller GitHub Power Platform tools.
  • Automatiserad testning av den intelligenta programarbetsbelastningen som en del av distributionsprocessen.

Använda lösningar för miljöhantering

Underhåll separata miljöer för utveckling, testning och produktion. Den här metoden hjälper till att isolera problem och säkerställer att ändringar testas noggrant innan de når användarna.

Använd -lösningar för att flytta plugin-program som skapats i Microsoft Copilot Studio över olika miljöer.

Viktiga rekommendationer och överväganden:

  • Arbeta inom ramen för lösningar: Se till att all utveckling sker inom ramen för lösningar.
  • Separata lösningar för oberoende distribution: Skapa endast distinkta lösningar när det finns ett behov av att distribuera komponenter oberoende av varandra.
  • Förstå begränsningar: Förstå begränsningarna för automatiserad distribution och utvärdera vilka inställningar som måste anges eller uppdateras manuellt efter distributionen, till exempel Application Insights-integrering, distribuerade kanaler och säkerhetsinställningar.
  • Använd en anpassad utgivare och ett anpassat prefix: Implementera en anpassad utgivare och ett anpassat prefix för bättre organisation och hantering.
  • Använd miljövariabler: Använd miljövariabler för inställningar och hemligheter som varierar mellan olika miljöer.
  • Exportera och distribuera som hanterade lösningar: Exportera och distribuera lösningar som hanterade, förutom när du konfigurerar en utvecklingsmiljö.
  • Begränsa anpassningar till utveckling: Undvik att göra anpassningar utanför utvecklingsmiljön.
  • Automatisera ALM-processer: Överväg att automatisera ALM för källkontroll och automatiserade distributioner.

Exempel

Det här exemplet ger en översikt över distributionsstrategin för en intelligent programarbetsbelastning och beskriver de roller och processer som är associerade med varje miljö: Utveckling (Dev), Testning (Test), Kvalitetssäkring (QA) och Produktion (Prod).

Exempel på lösningskonfiguration

  1. Utvecklingsmiljön (Dev):

    • Syfte: För det första skapandet och anpassningen av lösningen.
    • Aktiviteter: Utvecklare skapar och ändrar komponenter som appar, flöden och handläggare. Alla anpassningar och konfigurationer utförs här.
    • Affärspraxis:
      • Använd en anpassad utgivare och ett prefix för alla komponenter.
      • Implementera miljövariabler för inställningar och hemligheter.
      • Se till att alla ändringar är versionskontrollerade och dokumenterade.
  2. Testmiljön (Test):

    • Syfte: För preliminär validering och testning av den framtagna lösningen.
    • Aktiviteter: Lösningar exporteras från utvecklingsmiljön som hanterade lösningar och importeras till testmiljön. Funktions- och integrationstester utförs för att identifiera och lösa problem tidigt.
    • Affärspraxis:
      • Upprätthåll en separat testmiljö för att simulera verkliga scenarier.
      • Använd miljövariabler för att hantera inställningar och hemligheter som är specifika för testmiljön.
      • Automatisera distributionsprocesser för att säkerställa konsekvens och repeterbarhet.
  3. Kvalitetssäkringsmiljö (Q.A. eller QA):

    • Syfte: Dedikerad till grundlig kvalitetssäkring och användaracceptanstestning (UAT).
    • Aktiviteter: Hanterade lösningar importeras från testmiljön till QA-miljön. Omfattande tester, inklusive prestanda, säkerhet och UAT, utförs för att säkerställa att lösningen uppfyller alla krav och standarder.
    • Affärspraxis:
      • Använd miljövariabler för att hantera QA-specifika inställningar och hemligheter.
      • Involvera användare i UAT för att samla in feedback och se till att lösningen uppfyller deras behov.
      • Automatisera testprocesser där det är möjligt för att öka effektiviteten och noggrannheten.
  4. Produktionsmiljö (Prod):

    • Syfte: Är värd för den aktiva, användarriktade versionen av lösningen.
    • Aktiviteter: Efter lyckad QA-testning exporteras den hanterade lösningen från QA-miljön och importeras till produktionsmiljön. Den här miljön är strikt kontrollerad för att säkerställa stabilitet och tillförlitlighet.
    • Affärspraxis:
      • Distribuera lösningar som hanterade för att förhindra obehöriga ändringar.
      • Använd miljövariabler för att hantera produktionsspecifika inställningar och hemligheter.
      • Övervaka och underhålla lösningen för att säkerställa optimal prestanda och åtgärda eventuella problem snabbt.

Övergripande strategi:

  • Separation av ansvarsområden: Varje miljö har ett distinkt syfte, vilket säkerställer att utvecklings-, testnings-, QA- och produktionsaktiviteter inte stör varandra.
  • Automatisering: Automatisera ALM-processer, inklusive källkontroll, testning och distributioner, för att förbättra effektiviteten och minska risken för fel.
  • Konsekvens: Upprätthåll konsekvens mellan miljöer med hjälp av miljövariabler och skript för automatisk distribution.

Upprätta en teststrategi

Se till att du har en tydlig plan för att verifiera att dina intelligenta programarbetsbelastningar och integreringar fungerar som förväntat.

  • Definiera din teststrategi för intelligenta programarbetsbelastningar. Använd Testramverk för att masstesta användarens talindata och verifiera att rätt ämne utlöses eller att det första alternativet "menade du" är rätt i 90 % av fallen.

  • Testa integreringar som en del av den fullständiga konversationstestningen från slutpunkt till slutpunkt med Test Framework-skalningstestfunktionen.

  • Använd Power CAT Copilot Studio-paket för att konfigurera agenter och tester. Kör enskilda tester mot Copilot Studio API:erna (Direct Line) och utvärdera agentens svaren mot förväntade resultat.

  • Se till att du förstår icke-funktionella krav som tillgänglighet, efterlevnad, datalagring/uppehållstillstånd, prestanda, integritet, återställningstid, säkerhet och skalbarhet. Till exempel bör en chattwidget på webbplatsen laddas och starta en konversation inom 5 sekunder efter att du klickat på den. På samma sätt bör ett molnflöde som utlöses för att returnera information till användaren tillhandahålla önskade data inom 10 sekunder.