Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Anmerkung
Das Testmodul ist veraltet und wird in einer zukünftigen Version entfernt. Verwenden Sie Power Platform Playwright-Beispiele für Testautomatisierungsfunktionen in Power Platform- und Dynamics 365-Diensten.
In diesem Artikel wird erklärt, wie Sie Integrationstests mit Dataverse erstellen. Diese Funktionalität wendet die Power Fx Funktion zum Herstellen einer Verbindung mit Dataverse Tabellen an.
Herstellen einer Verbindung mit Dataverse
Um die Dataverse Integration zu aktivieren, fügen Sie den enableDataverseFunctions Parameter in Ihrer testSettingsextensionModules hinzu:
testSettings:
extensionModules:
enable: true
parameters:
enableDataverseFunctions: true
Wenn Sie die Dataverse-Integration aktivieren, müssen Sie Azure CLI mit einem Benutzer- oder Dienstprinzipal öffnen, der über Rechte für die Dataverse-Umgebung verfügt. Sie können den Befehl verwenden: az login Weitere Informationen: Sign in with Azure CLI.
Die für die Integration verwendete Dataverse-API-URL wird entweder aus dem Hostdomänennamen des Parameters pac-Testlauf--domain oder durch Festlegen einer PowerShell-Umgebungsvariable mit dem Namen DATAVERSE_URL abgerufen.
Aktivieren der Vorschau
Derzeit ist für alle Dataverse Funktionen zum Testen von Erweiterungen die Verwendung von Vorschaufunktionen erforderlich. Um diese zu aktivieren, fügen Sie Preview zur allowPowerFxNamespaces Liste in extensionModules hinzu.
testSettings:
extensionModules:
enable: true
allowPowerFxNamespaces:
- Preview
parameters:
enableDataverseFunctions: true
Den aktuellen Status zurücksetzen
Definieren Sie den onTestCaseStart Ereignishandler in Ihrer erstellten Test-YAML-Datei, um vor jedem Testfall allgemeine Aktionen auszuführen. Zum Beispiel:
testSuite:
testSuiteName: Dataverse tests
testSuiteDescription: Validate Power Fx can be used to run Dataverse integration tests
persona: User1
appLogicalName: N/A
onTestCaseStart: |
= ForAll(Accounts, Remove(Accounts, ThisRecord))
In diesem Beispiel wird das ForAll verwendet, um eine Tabelle zu durchlaufen und für jeden Datensatz eine Aktion auszuführen. Die Remove Funktion wird dann verwendet, um jeden Datensatz aus einer Tabelle zu löschen, um sicherzustellen, dass eine leere Tabelle vorhanden ist, bevor jeder Test ausgeführt wird.
Funktionen von Interesse
Diese Funktionen sind nützlich, wenn Sie mit Dataverse arbeiten:
- Sammeln: Fügt Datensätze einer Tabelle hinzu.
- CountRows: Ermittelt die Anzahl von Datensätzen in einer Tabelle.
- First:: Gibt den ersten Datensatz einer Tabelle zurück.
- ForAll: Durchläuft eine Tabelle und führt für jeden Datensatz eine Aktion aus.
- Patch. Vorhandenen Datensatz aktualisieren.
- Entfernen: Löscht einen bestimmten Datensatz aus einer Tabelle.
Überlegungen
Berücksichtigen Sie beim Schreiben von Testschritten die folgenden Überlegungen:
-
Defaults wird nicht unterstützt. Aus diesem Grund werden Power Fx-Beispiele wie
Patch(Accounts, Defaults(Accounts), {name:"test"})nicht unterstützt. - Sie können
Collectals eine Alternative zuPatchmit derDefaultsFunktion verwenden
Ausführen von Dataverse-Tests
Sie können den Power Fx Anbieter (powerfx) verwenden, um Tests auszuführen, die mit Dataverse interagieren, ohne dass eine Canvas- oder modellgesteuerte App-Schnittstelle erforderlich ist. Dies ist nützlich zum Testen von Geschäftslogik, Plug-Ins, Flows und anderen Back-End-Diensten.
pac test run `
--provider powerfx `
--test-plan-file your-testplan.te.yaml `
--tenant your-tenantid-guid-value `
--environment-id your-environmentid-guid-value `
--domain "https://contoso.crm.dynamics.com"
KI Integration
Wenn das Open-Source Power Apps Test Engine im Debug-Modus kompiliert wurde, zusammen mit den entsprechenden Testeinstellungen, wird die Preview.AIExecutePrompt Funktion in Ihren Tests aktivieren.
Fügen Sie Ihren Testeinstellungen Folgendes hinzu, um die KI-Integration zu aktivieren:
testSettings:
extensionModules:
enable: true
parameters:
enableDataverseFunctions: true
enableAIFunctions: true
Beispiel für die Verwendung der KI-Funktion:
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)