Power Apps testimoduulin todentamisopas (vanhentunut)

Muistiinpano

Testimoduuli on vanhentunut , ja se poistetaan tulevassa versiossa. Käytä Power Platform Playwright -näytteitä Power Platformin ja Dynamics 365-palveluiden testien automatisointiominaisuuksiin.

Tässä oppaassa on vaiheittaiset ohjeet todennuksen määrittämiseen Test Enginessä. Nopea yleiskatsaus todennusvaihtoehdoista on kohdassa Todennus testimoottorissa.

Todennuksen käytön aloittaminen

Test Engine tukee kahta todennusmenetelmää pohjaan perustuvien ja mallipohjaisten sovellusten verkkopohjaisissa testeissä:

  • StorageState – Oletusarvoinen, helppo määritys yksittäistä kehitystä varten (verkkopohjaiset pohjaan perustuvat ja mallipohjaiset sovellustestit)
  • Dataverse - Tiimipohjainen lähestymistapa testikäyttäjien ja CI/CD:n jakamiseen (verkkopohjaiset pohjaan perustuvat ja mallipohjaiset sovellustestit)

Todennus käsitellään eri tavalla PowerFx-palveluntarjoajassa ja suorissa Dataverse testeissä. Nämä testit hankkivat käyttöoikeustietueet suoraan sisäänkirjautuneen Azure CLI -istunnostasi käyttämällä az -komentoja resurssien käyttöoikeustietueiden hankkimiseksi. Varmista, että olet kirjautunut sisään az login --allow-no-subscriptions , ennen kuin suoritat tämäntyyppisiä testejä.

Pika-asennus: StorageState-todennus

StorageState-todennus on yksinkertaisin tapa aloittaa. Se käyttää Windows Data Protection -ohjelmointirajapintaa todennustunnusten turvalliseen tallentamiseen paikalliseen tietokoneeesi.

Vaihe 1: Suorita testi oletustodennuksella

Suorita seuraava PowerShell-komento korvaamalla parametrit, jotka alkavat your.

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

Muistiinpano

Pac-testisuoritusparametria--user-auth ei käytetä tässä esimerkissä, koska oletuspalvelu on StorageState. Voit halutessasi sisällyttää sen.

Vaihe 2: Suorita vuorovaikutteinen kirjautuminen loppuun

Anna testikäyttäjätilisi tunnistetiedot

  1. Selainikkuna avautuu automaattisesti
  2. Kirjaudu sisään testikäyttäjätunnuksellasi
  3. Hyväksy, kun se pyydetään, monivaiheinen tunnistautuminen ja suostumuskehotteet.
  4. Valitse pyydettäessä "Pysy kirjautuneena"

Todennus on nyt tallennettu.

  • Test Engine tallentaa todennuksen turvallisesti
  • Tulevat testiajot käyttävät tallennettua tilaa ilman kirjautumista
  • Tunnukset päivittyvät automaattisesti tarvittaessa

Ryhmän määritys: Dataverse todennus

Dataverse todennus sopii erinomaisesti tiimeille ja CI/CD-putkille. Se tallentaa todennetut käyttäjätilat Dataverse turvallisesti X.509-varmenteilla salattuina.

Vaihe 1: Lataa ja tuo Test Engine -ratkaisu

  1. Lataa Power Platform ratkaisu osoitteesta https://aka.ms/TestEngineAuth.
  2. Kirjaudu sisään kohtaan Power Apps.
  3. Valitse kohdeympäristö.
  4. Siirry kohtaan Ratkaisut ja valitse Tuo ratkaisu.
  5. Lataa ja asenna Test Engine -ratkaisu ohjatun toiminnon avulla.

Vaihe 2: Luo varmenne salausta varten

Jos haluat itse allekirjoitetun varmenteen (vain kehitys), suorita tämä seuraavalla PowerShell-komentosarjalla:

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

Käytä tuotannossa yrityksen varmenteen myöntäjän varmennetta.

Vaihe 3: Määritä testikäyttäjä

Määritä testikäyttäjä seuraavasti:

  1. Avaa pääte ja kirjaudu ulos kaikista olemassa olevista istunnoista:

    # Clear Power Platform CLI credentials
    pac auth clear
    
    # Clear Azure CLI credentials
    az logout
    
  2. Kirjaudu sisään Azure CLI avulla (vaaditaan Dataverse-todennusta varten):

    az login --allow-no-subscriptions
    
  3. Määritä varmenteen nimi PowerShell-ympäristömuuttujaksi , jonka nimi on DataProtectionCertificateName:

    $env:DataProtectionCertificateName = "CN=testengine"
    
  4. Suorita testi todennuksella 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
    

    Muistiinpano

    Toisin kuin StorageState, tässä tapauksessa sinun on käytettävä --user-auth parametria, jonka arvo on Dataverse.

  5. Suorita vuorovaikutteinen kirjautuminen pyydettäessä.

Palvelun päänimien määrittäminen (CI/CD)

CI/CD-putkien automaattisessa testauksessa voit käyttää palvelun päänimiä vuorovaikutteisten käyttäjätilien sijaan.

Vaihe 1: Luo sovelluksen rekisteröinti Microsoft Entra ID

Luo sovelluksen rekisteröinti Microsoft Entra ID suorittamalla seuraavat vaiheet.

  1. Kirjaudu sisään Microsoft Entra -hallintakeskus
  2. Siirry kohtaan Applications>App registrations
  3. Valitse Uusi rekisteröinti
  4. Kirjoita nimi (esimerkiksi "Test Engine Automation")
  5. Säilytä oletusasetukset ja valitse Rekisteröidy
  6. Merkitse luomisen jälkeen muistiin sovelluksen (asiakkaan) tunnus ja hakemiston (vuokraajan) tunnus

Vaihe 2: Määritä ohjelmointirajapinnan käyttöoikeudet Dataverse

Määritä ohjelmointirajapinnan käyttöoikeudet seuraavasti Dataverse.

  1. Siirry sovelluksen rekisteröinnissä kohtaan API-käyttöoikeudet
  2. Valitse Lisää oikeus
  3. Valitse organisaationi käyttämät ohjelmointirajapinnat
  4. Etsi ja valitse Dataverse
  5. Valitse Delegoidut käyttöoikeudet
  6. Tarkista user_impersonation
  7. Valitse Lisää käyttöoikeuksia
  8. Valitse Myönnä järjestelmänvalvojan suostumus

Vaihe 3: Asiakasohjelman salaisuuden luominen

Luo asiakasohjelman salasana seuraavasti.

  1. Siirry kohtaan Varmenteet ja salaisuudet
  2. Valitse Uusi asiakasohjelman salaisuus
  3. Lisää kuvaus ja valitse vanheneminen
  4. Kopioi salainen arvo välittömästi (et näe sitä uudelleen)

Vaihe 4: Lisää sovelluksen käyttäjä kohtaan Dataverse

Suorita seuraavat vaiheet lisätäksesi sovelluksen käyttäjän Dataverse.

  1. Avaa Power Platform hallintakeskus
  2. Valitse ympäristösi
  3. Siirry kohtaan Asetukset>Käyttäjät + käyttöoikeudet>Sovelluksen käyttäjät
  4. Valitse + Uusi sovelluksen käyttäjä
  5. Etsi ja valitse sovelluksesi
  6. Määritä asianmukaiset liiketoimintayksikkö- ja käyttöoikeusroolit (mukaan lukien "Testaa moduulin käyttäjä" -rooli)
  7. Tallenna muutokset

Vaihe 5: CI/CD-putken määrittäminen

Lisää nämä muuttujat putkeen:

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)

Tallenna Azure DevOps nämä turvallisesti kohtaan Variable Groups asianmukaisin oikeuksilla.

PowerFx ja suoratestitodennus Dataverse

PowerFx-palveluntarjoajatesteissä ja suorissa Dataverse testeissä todennus toimii eri tavalla kuin verkkopohjaisissa testeissä.

PowerFx:n/Dataverse todennuksen toiminta

  1. Testimoduuli käyttää Azure CLI resurssikohtaisen käyttöoikeustietueen hankkimiseen
  2. Tunnusta käytetään todentamiseen suoraan ohjelmointirajapintojen avulla Dataverse
  3. Selainta tai verkkopohjaista todennusta ei tarvita

PowerFx:n/Dataverse todennuksen määrittäminen

  1. Varmista, Azure CLI on asennettu ja ajan tasalla:

    winget install -e --id Microsoft.AzureCLI
    # Or update it if already installed
    az upgrade
    
  2. Kirjaudu sisään Azure CLI avulla:

    # The --allow-no-subscriptions flag is important as you may not have Azure subscriptions
    az login --allow-no-subscriptions
    
  3. Suorita testi PowerFx-palveluntarjoajan kanssa:

    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"
    

Todennuksen vianmääritys

Tässä osassa on tietoja todennuksen vianmäärityksestä Test Enginen avulla.

StorageStaten yleisiä ongelmia

  • Ongelma: Todennuskehote tulee näkyviin jokaisen suorituksen yhteydessä.

    • Ratkaisu: Tarkista, valitsitko Pysy kirjautuneena sisäänkirjautumisen yhteydessä.
  • Ongelma: Cannot access secure storage virhe.

    • Ratkaisu: Varmista, että sinulla on asianmukaiset käyttöoikeudet käyttäjäprofiilikansioosi.

Yleisiä todennukseen liittyviä Dataverse ongelmia

  • Ongelma: Certificate not found virhe.

    • Ratkaisu: Varmista, että varmenteen nimi vastaa täsmälleen varmennesäilön nimeä.
  • Ongelma: Unable to connect to Dataverse virhe.

    • Solution: Tarkista, että Azure CLI on kirjautunut sisään az login --allow-no-subscriptions -toiminnolla.
  • Ongelma: Access denied virhe palvelun päänimessä.

    • Ratkaisu: Varmista, että sovelluksella on oikeat käyttöoikeudet Dataverse ja asianmukaiset käyttöoikeusroolit.

Yleisiä ongelmia PowerFx:ssä/Dataverse todennuksessa

  • Ongelma: Unable to obtain access token virhe

    • Solution: Varmista, että olet kirjautunut sisään Azure CLI az account get-access-token
  • Ongelma: Access denied – Dataverse

    • Ratkaisu: Varmista, että kirjautuneella käyttäjällä on asianmukaiset Dataverse käyttöoikeudet ympäristössä
  • Ongelma: Tunnuksen vanheneminen pitkien testiajojen aikana

    • Ratkaisu: Käytä palvelun päänimeä, jolla on pidempi tunnuksen vanheneminen, tai käsittele uudelleentodennus testivaiheissa

Todennuksen suojausarkkitehtuuri
Testaa canvas-sovelluksia
Testaa mallipohjaisia sovelluksia
Testaa Dataverse laajennukset