Zdieľať cez


Sprievodca overovaním pre Power Apps Test Engine (ukážka)

Poznámka

Funkcie ukážky nie sú určené na produkčné účely a môžu mať obmedzenú funkčnosť. Tieto funkcie sú k dispozícii pred oficiálnym vydaním, aby k nim mohli zákazníci získať rýchly prístup a poskytnúť odozvu.

Táto príručka poskytuje podrobné pokyny na nastavenie overovania v Test Engine. Stručný prehľad možností overovania nájdete v časti Overovanie v testovacom nástroji .

Začíname s autentifikáciou

Testovací engine podporuje dve metódy overovania pre webové testy pre aplikácie riadené modelmi a aplikácie založené na canvase:

  • StorageState - Predvolené, jednoduché nastavenie pre individuálny vývoj (pre webové plátno a testy aplikácií riadených modelom)
  • Dataverse - Tímový prístup k zdieľaniu testovacích používateľov a CI/CD (pre webové plátno a testy modelom riadených aplikácií)

Autentifikácia sa spracováva odlišne pre testy poskytovateľa PowerFx a priame testy. Dataverse Tieto testy získavajú prístupové tokeny priamo z vašej prihlásenej relácie Azure CLI pomocou príkazov na získanie prístupových tokenov k zdrojom. az Pred spustením týchto typov testov sa uistite, že ste prihlásení pomocou účtu az login --allow-no-subscriptions .

Rýchle nastavenie: Overenie StorageState

Autentifikácia StorageState je najjednoduchší spôsob, ako začať. Používa rozhranie Windows Data Protection API na bezpečné ukladanie autentifikačných tokenov na vašom lokálnom počítači.

Krok 1: Spustite test s predvoleným overením

Spustite nasledujúci príkaz PowerShellu, v ktorom nahraďte parametre začínajúce na your.

pac test run `
   --provider canvas `
   --test-plan-file your-test-plan.yaml `
   --tenant your-tenant-id `
   --environment-id your-environment-id

Poznámka

Parameter pac test run--user-auth sa v tomto príklade nepoužíva, pretože predvolený poskytovateľ je StorageState. Môžete ho zahrnúť, ak chcete.

Krok 2: Dokončite interaktívne prihlásenie

Zadajte prihlasovacie údaje k testovaciemu používateľskému účtu

  1. Okno prehliadača sa otvorí automaticky
  2. Prihláste sa pomocou svojho testovacieho používateľského účtu
  3. Ak sa zobrazí výzva, schválite MFA a výzvy na súhlas.
  4. Po zobrazení výzvy vyberte možnosť „Zostať prihlásený“

Vaše overenie je teraz uložené.

  • Testovací engine bezpečne ukladá vašu autentifikáciu
  • Budúce testovacie spustenia použijú uložený stav bez nutnosti prihlásenia
  • Tokeny sa automaticky obnovujú podľa potreby

Nastavenie tímu: Dataverse overenie

Dataverse Autentifikácia je ideálna pre tímy a CI/CD kanály. Bezpečne ukladá overené stavy používateľov v súbore Dataverse, šifrovanom certifikátmi X.509.

Krok 1: Stiahnutie a importovanie riešenia Test Engine

  1. Stiahnite si riešenie z webovej stránky Power Platform . https://aka.ms/TestEngineAuth
  2. Prihlásiť sa do Power Apps.
  3. Vyberte si cieľové prostredie.
  4. Prejdite na Riešenia a vyberte Importovať riešenie.
  5. Postupujte podľa pokynov sprievodcu a nahrajte a nainštalujte riešenie Test Engine.

Krok 2: Vytvorenie certifikátu na šifrovanie

Pre certifikát s vlastným podpisom (iba pre vývojárov) spustite nasledujúci skript PowerShellu:

$Params = @{
  DnsName = @("testengine", "testengine")
  CertStoreLocation = "Cert:\CurrentUser\My"
  NotAfter = (Get-Date).AddMonths(6)
  KeyAlgorithm = "RSA"
  KeyLength = 2048
}
New-SelfSignedCertificate @Params

Pre produkčné prostredie použite certifikát od vašej podnikovej certifikačnej autority.

Krok 3: Nastavte si testovacieho používateľa

Na nastavenie testovacieho používateľa vykonajte nasledujúce kroky:

  1. Otvorte terminál a odhláste sa zo všetkých existujúcich relácií:

    # Clear Power Platform CLI credentials
    pac auth clear
    
    # Clear Azure CLI credentials
    az logout
    
  2. Prihláste sa pomocou rozhrania Azure CLI (vyžaduje sa pre overenie): Dataverse

    az login --allow-no-subscriptions
    
  3. Nastavte názov certifikátu ako premennú prostredia PowerShell s názvom a : DataProtectionCertificateName

    $env:DataProtectionCertificateName = "CN=testengine"
    
  4. Spustite test s overením totožnosti: Dataverse

    pac test run `
       --provider canvas `
       --user-auth Dataverse `
       --auth Certstore `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id
    

    Poznámka

    Na rozdiel od parametra StorageState musíte v tomto prípade použiť parameter --user-auth s hodnotou Dataverse.

  5. Po zobrazení výzvy dokončite interaktívne prihlásenie.

Nastavenie principálov služieb (pre CI/CD)

Na automatizované testovanie v kanáloch CI/CD môžete namiesto interaktívnych používateľských účtov použiť principály služieb.

Krok 1: Vytvorenie registrácie aplikácie v Microsoft Entra ID

Ak chcete vytvoriť registráciu aplikácie v Microsoft Entra ID, vykonajte nasledujúce kroky.

  1. Prihláste sa do centra administrácie Microsoft Entra
  2. Prejdite do sekcie Aplikácie>Registrácie aplikácií
  3. Vyberte Nová registrácia
  4. Zadajte názov (napríklad „Automatizácia testovacieho enginu“)
  5. Ponechajte predvolené možnosti a vyberte možnosť Registrovať
  6. Po vytvorení si poznačte ID aplikácie (klienta) a ID adresára (nájomníka)

Krok 2: Nakonfigurujte povolenia rozhrania API pre Dataverse

Ak chcete nakonfigurovať povolenia rozhrania API, vykonajte nasledujúce kroky Dataverse.

  1. V registrácii aplikácie prejdite na Povolenia API
  2. Vyberte možnosť Pridať povolenie
  3. Vyberte rozhrania API, ktoré moja organizácia používa
  4. Vyhľadať a vybrať Dataverse
  5. Vyberte Delegované povolenia
  6. Skontrolovať user_impersonation
  7. Vyberte možnosť Pridať povolenia
  8. Vyberte možnosť Udeliť súhlas správcu

Krok 3: Vytvorenie tajného kľúča klienta

Ak chcete vytvoriť tajný kľúč klienta, vykonajte nasledujúce kroky.

  1. Prejsť na Certifikáty a tajné kľúče
  2. Vyberte Nový tajný kód klienta
  3. Pridajte popis a vyberte dátum vypršania platnosti
  4. Tajnú hodnotu Value kopírujte okamžite (už ju nebudete môcť znova vidieť)

Krok 4: Pridajte používateľa aplikácie do Dataverse

Ak chcete pridať používateľa aplikácie do Dataverse, vykonajte nasledujúce kroky.

  1. Otvorte Power Platform Centrum spravovania
  2. Výber prostredia
  3. Prejdite do časti Nastavenia Používatelia + povolenia>Používatelia aplikácie>
  4. Vyberte + Nový používateľ aplikácie
  5. Vyhľadajte a vyberte svoju aplikáciu
  6. Priraďte príslušné obchodné jednotky a bezpečnostné roly (vrátane roly „Používateľ testovacieho nástroja“)
  7. Uloženie zmien

Krok 5: Nakonfigurujte si kanál CI/CD

Pridajte tieto premenné do svojho kanála:

AZURE_CLIENT_ID: (your application ID)
AZURE_CLIENT_SECRET: (your client secret)
AZURE_TENANT_ID: (your tenant ID)
DataProtectionCertificateValue: (base64 encoded certificate)
ENVIRONMENT_URL: (your Dataverse environment URL)

Pre Azure DevOps ich bezpečne uložte do Skupín premenných s príslušnými povoleniami.

PowerFx a priame testovanie autentifikácie Dataverse

Pre testy poskytovateľov PowerFx a priame testy funguje autentifikácia inak ako pre webové testy. Dataverse

Ako funguje overovanie PowerFx/Dataverse

  1. Testovací engine používa rozhranie Azure CLI na získanie prístupového tokenu pre špecifický zdroj
  2. Token sa používa na priame overenie pomocou rozhraní API Dataverse
  3. Nevyžaduje sa žiadne overovanie v prehliadači ani na webe

Nastavenie overovania PowerFx/Dataverse

  1. Uistite sa, že je rozhranie Azure CLI nainštalované a aktuálne:

    winget install -e --id Microsoft.AzureCLI
    # Or update it if already installed
    az upgrade
    
  2. Prihláste sa pomocou rozhrania príkazového riadka Azure:

    # The --allow-no-subscriptions flag is important as you may not have Azure subscriptions
    az login --allow-no-subscriptions
    
  3. Spustite test s poskytovateľom PowerFx:

    pac test run `
       --provider powerfx `
       --test-plan-file testplan.yaml `
       --tenant your-tenant-id `
       --environment-id your-environment-id `
       --domain "https://your-environment.crm.dynamics.com"
    

Riešenie problémov s overovaním

Táto časť obsahuje informácie o riešení problémov s overovaním pomocou Test Engine.

Bežné problémy so StorageState

  • Problém: Výzva na overenie sa zobrazuje pri každom spustení.

    • Riešenie: Skontrolujte, či ste počas prihlasovania vybrali možnosť Zostať prihlásený .
  • Problém: Cannot access secure storage chyba.

    • Riešenie: Uistite sa, že máte príslušný prístup k priečinku s vaším používateľským profilom.

Bežné problémy s overovaním Dataverse

  • Problém: Certificate not found chyba.

    • Riešenie: Overte, či názov certifikátu presne zodpovedá názvu vo vašom úložisku certifikátov.
  • Problém: Unable to connect to Dataverse chyba.

    • Riešenie: Skontrolujte, či je rozhranie Azure CLI prihlásené pomocou az login --allow-no-subscriptions.
  • Problém: Access denied chyba so službou principal.

    • Riešenie: Overte, či má aplikácia správne povolenia v Dataverse a príslušné bezpečnostné roly.

Bežné problémy s overovaním PowerFx/Dataverse

  • Problém: Unable to obtain access token chyba

    • Riešenie: Overte, či ste prihlásení pomocou rozhrania Azure CLI az account get-access-token
  • Problém: Access denied do Dataverse

    • Riešenie: Uistite sa, že váš prihlásený používateľ má príslušné povolenia v prostredí Dataverse
  • Problém: Platnosť tokenu vyprší počas dlhých testovacích behov

    • Riešenie: Použite principál služby s dlhšou platnosťou tokenu alebo spracujte opätovné overenie v testovacích krokoch

Architektúra zabezpečenia autentifikácie
Testovacie aplikácie na plátne
Testovanie aplikácií riadených modelom
Testovacie rozšírenia Dataverse