Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Nota
Le funzionalità di anteprima non sono destinate ad essere utilizzate per la produzione e sono soggette a restrizioni. Vengono rese disponibili prima di una versione ufficiale in modo che i clienti possano accedervi con anticipo e fornire i loro commenti.
Questo articolo spiega come creare test di integrazione con Dataverse. Questa funzionalità applica la Power Fx capacità di connettersi alle Dataverse tabelle.
Connessione a Dataverse in corso
Per abilitare l' Dataverse integrazione, aggiungi il parametro enableDataverseFunctions in testSettingsextensionModules :
testSettings:
extensionModules:
enable: true
parameters:
enableDataverseFunctions: true
Quando si abilita l'integrazione, è necessario aprire l'interfaccia della riga di comando di Azure con un utente o un'entità servizio che disponga dei diritti per l'ambiente. Dataverse Dataverse È possibile utilizzare il comando: az login Ulteriori informazioni: accedere tramite l'interfaccia della riga di comando di Azure.
L' Dataverse URL dell'API utilizzato per l'integrazione viene ottenuto dal nome di dominio host del parametro pac test run--domain oppure definendo una variabile di ambiente PowerShell denominata DATAVERSE_URL.
Abilitare l'anteprima
Attualmente, tutte le Dataverse capacità di test delle estensioni richiedono l'utilizzo delle funzioni di anteprima. Per abilitarli, aggiungili Preview all' allowPowerFxNamespaces elenco in extensionModules.
testSettings:
extensionModules:
enable: true
allowPowerFxNamespaces:
- Preview
parameters:
enableDataverseFunctions: true
Ripristino dello stato attuale
Definisci il gestore eventi nel file yaml del test creato per eseguire azioni comuni prima di ogni caso di test. onTestCaseStart Ad esempio:
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 questo esempio, ForAll viene utilizzato per scorrere una tabella ed eseguire un'azione su ciascun record. La funzione Remove viene quindi utilizzata per eliminare ogni record da una tabella per garantire che la tabella sia vuota prima dell'esecuzione di ogni test.
Funzioni di interesse
Queste funzioni sono utili quando si lavora con Dataverse:
- Raccogli: aggiunge record a una tabella.
- CountRows: restituisce il numero di record in una tabella.
- First: restituisce il primo record in una tabella.
- ForAll: scorre una tabella ed esegue un'azione su ciascun record.
- Patch: aggiorna un record esistente.
- Rimuovi: elimina un record specifico da una tabella.
Considerazioni
Tieni presente queste considerazioni quando scrivi i passaggi del test:
-
I valori predefiniti non sono supportati. Di conseguenza Power Fx esempi come
Patch(Accounts, Defaults(Accounts), {name:"test"})non sono supportati. - Puoi usare
Collectun'alternativa aPatchcon laDefaultsfunzione
Esecuzione di test Dataverse
È possibile utilizzare il provider ( Power Fx ) per eseguire test che interagiscono con powerfxsenza la necessità di un'interfaccia canvas o di un'app basata su modello. Dataverse Questo è utile per testare la logica aziendale, i plugin, i flussi e altri servizi backend.
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"
Integrazione AI
Utilizzando la modalità open source Power Apps Test Engine compilata in Debug insieme alle impostazioni di test appropriate, verrà abilitata la funzione Preview.AIExecutePrompt nei test.
Aggiungi quanto segue alle impostazioni di test per abilitare l'integrazione dell'IA:
testSettings:
extensionModules:
enable: true
parameters:
enableDataverseFunctions: true
enableAIFunctions: true
Esempio di utilizzo della funzione AI:
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)