Бележка
Достъпът до тази страница изисква удостоверяване. Можете да опитате да влезете или да промените директориите.
Достъпът до тази страница изисква удостоверяване. Можете да опитате да промените директориите.
Бележка
Функциите за предварителен преглед не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.
Това ръководство предоставя инструкции стъпка по стъпка за настройване на удостоверяване в тестовата машина. За бърз преглед на опциите за удостоверяване вижте Удостоверяване в тестовата машина.
Първи стъпки с удостоверяването
Test Engine поддържа два метода за удостоверяване за уеб-базирани тестове за платно и приложения, управлявани от модел:
- StorageState - По подразбиране, лесна настройка за индивидуална разработка (за уеб-базирано платно и тестове на приложения, управлявани от модел)
- Dataverse - Екипен подход за споделяне на тестови потребители и CI/CD (за уеб-базирано платно и тестове на приложения, управлявани от модел)
Удостоверяването се обработва по различен начин за доставчици на PowerFx и директни Dataverse тестове. Тези тестове получават маркери за достъп директно от вашата влезла в Azure CLI сесия, като използват az команди за получаване на маркери за достъп до ресурси. Уверете се, че сте влезли в az login --allow-no-subscriptions системата, преди да изпълните тези типове тестове.
Бърза настройка: Удостоверяване на StorageState
Удостоверяването на StorageState е най-лесният начин да започнете. Той използва API за защита на данните на Windows за сигурно съхраняване на токени за удостоверяване на вашата локална машина.
Стъпка 1: Изпълнете теста си с удостоверяване по подразбиране
Изпълнете следната команда PowerShell, като замените параметрите, започвайки с. your
pac test run `
--provider canvas `
--test-plan-file your-test-plan.yaml `
--tenant your-tenant-id `
--environment-id your-environment-id
Бележка
Параметърът pac test run--user-auth не се използва в този пример, защото доставчикът по подразбиране е StorageState. Можете да го включите, ако желаете.
Стъпка 2: Завършете интерактивното влизане
Въведете идентификационните данни за тестовия си потребителски акаунт
- Прозорецът на браузъра се отваря автоматично
- Влезте с вашия тестов потребителски акаунт
- Ако бъдете подканени, одобрете MFA и подканите за съгласие
- Изберете "Останете влезли", когато бъдете подканени
Удостоверяването ви вече е запазено.
- Test Engine сигурно съхранява вашето удостоверяване
- Бъдещите тестови изпълнения използват записаното състояние, без да се изисква влизане
- Токените се опресняват автоматично, когато е необходимо
Настройка на екипа: Dataverse удостоверяване
Dataverse удостоверяването е идеално за екипи и CI/CD тръбопроводи. Той сигурно съхранява удостоверени потребителски състояния Dataverse, криптирани с X.509 сертификати.
Стъпка 1: Изтеглете и импортирайте решението Test Engine
- Изтеглете Power Platform решението от https://aka.ms/TestEngineAuth.
- Влезте в Power Apps.
- Изберете целевата си среда.
- Отидете на Решения и изберете Импортиране на решение .
- Следвайте съветника, за да качите и инсталирате решението Test Engine.
Стъпка 2: Създаване на сертификат за шифроване
За самоподписан сертификат (само за разработка) изпълнете следния скрипт на PowerShell:
$Params = @{
DnsName = @("testengine", "testengine")
CertStoreLocation = "Cert:\CurrentUser\My"
NotAfter = (Get-Date).AddMonths(6)
KeyAlgorithm = "RSA"
KeyLength = 2048
}
New-SelfSignedCertificate @Params
За производство използвайте сертификат от вашия корпоративен сертифициращ орган.
Стъпка 3: Настройване на тестовия потребител
Изпълнете следните стъпки, за да настроите тестовия си потребител:
Отворете терминала си и излезте от всички съществуващи сесии:
# Clear Power Platform CLI credentials pac auth clear # Clear Azure CLI credentials az logoutВлезте с Azure CLI (изисква се за Dataverse удостоверяване):
az login --allow-no-subscriptionsЗадайте името на сертификата като променлива на средата на PowerShell
DataProtectionCertificateNameс име:$env:DataProtectionCertificateName = "CN=testengine"Изпълнете теста си с 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Бележка
За разлика от StorageState, в този случай трябва да използвате параметъра
--user-authсъс стойност наDataverse.Завършете интерактивното влизане, когато бъдете подканени.
Настройване на принципали на услугата (за CI/CD)
За автоматизирано тестване в CI/CD тръбопроводи можете да използвате принципали на услуги вместо интерактивни потребителски акаунти.
Стъпка 1: Създайте регистрация на заявление в Microsoft Entra ID
Изпълнете следните стъпки, за да създадете регистрация на заявление в Microsoft Entra ID.
- Влезте в Центъра за администриране Microsoft Entra
- Навигирайте до Приложения>Регистрации на приложения
- Изберете Нова регистрация
- Въведете име (например "Test Engine Automation")
- Запазете опциите по подразбиране и изберете Регистрация
- След създаването отбележете ИД на приложение (клиент) и ИД на директория (клиент)
Стъпка 2: Конфигуриране на разрешения за API за Dataverse
Изпълнете следните стъпки, за да конфигурирате разрешенията за API Dataverse.
- При регистрацията на приложението си отидете на разрешения за API
- Изберете Добавяне на разрешение
- Избор на API, които моята организация използва
- Потърсете и изберете Dataverse
- Изберете Делегирани разрешения
- Проверете user_impersonation
- Изберете Добавяне на разрешения
- Изберете Предоставяне на съгласие на администратор
Стъпка 3: Създайте клиентска тайна
Изпълнете следните стъпки, за да създадете клиентска тайна.
- Към Сертификати и тайни
- Изберете Нова тайна на клиента
- Добавете описание и изберете срок на валидност
- Копирайте тайната стойност незабавно (не можете да я видите отново)
Стъпка 4: Добавете потребителя на приложението към Dataverse
Изпълнете следните стъпки, за да добавите потребителя на приложението Dataverse.
- Отворете центъра за администриране Power Platform
- Изберете своята среда
- Отидете на Настройки>Потребители + разрешения>Потребители на приложения
- Изберете + Нов потребител на приложението
- Потърсете и изберете вашето приложение
- Присвояване на подходящи роли на бизнес единица и защита (включете роля "Потребител на тестова машина")
- Запишете промените
Стъпка 5: Конфигурирайте вашия CI/CD тръбопровод
Добавете тези променливи към вашия тръбопровод:
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)
За Azure DevOps да ги съхранявате сигурно в групи променливи с подходящи разрешения.
PowerFx и удостоверяване на директно Dataverse тестване
За тестовете на доставчици на PowerFx и директните Dataverse тестове удостоверяването работи по различен начин от това за уеб-базираните тестове.
Как работи PowerFx/Dataverse удостоверяването
- Test Engine използва Azure CLI, за да получи маркер за достъп, специфичен за ресурса
- Токенът се използва за удостоверяване директно с Dataverse API
- Не е включено удостоверяване на браузър или уеб-базирано удостоверяване
Настройване на PowerFx/Dataverse удостоверяване
Уверете се, че Azure CLI е инсталиран и актуален:
winget install -e --id Microsoft.AzureCLI # Or update it if already installed az upgradeВлезте с Azure CLI:
# The --allow-no-subscriptions flag is important as you may not have Azure subscriptions az login --allow-no-subscriptionsИзпълнете теста си с доставчика на 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"
Отстраняване на неизправности при удостоверяване
Този раздел съдържа информация за отстраняване на неизправности при удостоверяване с тестовата машина.
Често срещани проблеми със StorageState
Проблем: Подкана за удостоверяване се появява при всяко изпълнение.
- Решение: Проверете дали сте избрали Остани влязъл по време на влизане.
Проблем:
Cannot access secure storageгрешка.- Решение: Уверете се, че имате подходящ достъп до папката на вашия потребителски профил.
Често срещани проблеми с Dataverse удостоверяването
Проблем:
Certificate not foundгрешка.- Решение: Проверете дали името на сертификата съвпада точно с това, което има във вашия магазин за сертификати.
Проблем:
Unable to connect to Dataverseгрешка.-
Решение: Проверете дали Azure CLI е влязъл.
az login --allow-no-subscriptions
-
Решение: Проверете дали Azure CLI е влязъл.
Проблем:
Access deniedгрешка с принципала на услугата.- Решение: Проверете дали приложението има правилни Dataverse разрешения и подходящи права за достъп.
Често срещани проблеми с PowerFx/Dataverse удостоверяване
Проблем:
Unable to obtain access tokenгрешка-
Решение: Уверете се, че сте влезли с Azure CLI, като използвате
az account get-access-token
-
Решение: Уверете се, че сте влезли с Azure CLI, като използвате
Задача:
Access deniedдо Dataverse- Решение: Уверете се, че Dataverse вашият влезъл потребител има подходящи разрешения в средата
Проблем: Изтичане на токена по време на дълги тестови изпълнения
- Решение: Използвайте принципал на услуга с по-дълго изтичане на маркера или обработете повторно удостоверяване в тестови стъпки
Свързани статии
Архитектура за сигурност на удостоверяването
Тестови приложения за платно
Тествайте приложения, управлявани от модел
Тестови Dataverse разширения