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.
Note
Questo articolo illustra i test con l'utilità PowerShell. Per i test con Esplora test di Visual Studio Code, vedere Power Query SDK test framework part 5a - Test del connettore di estensione con Visual Studio Code.
Questo riferimento in più parti illustra la configurazione e l'esecuzione di una suite standard di test per gli sviluppatori di connettori di Power Query. Questo riferimento deve essere eseguito in sequenza per assicurarsi che l'ambiente sia configurato per il test del connettore personalizzato.
Finora sono stati completati i passaggi seguenti:
- Configurare l'ambiente
- Caricare i dati di test
- Scaricato il gruppo di test
- Sono stati appresi vari formati di file e le relative funzionalità
Si è finalmente pronti per iniziare a verificare il connettore di estensioni con il gruppo di test.
In questa sezione, tu:
- Informazioni su come aggiornare le query sui parametri e i file di impostazioni
- Impostare il percorso per il framework di test, l'estensione del connettore e la directory delle impostazioni di test
- Impostare le credenziali per l'estensione
- Convalidare i dati di test eseguendo test di integrità
- Convalidare il connettore eseguendo il set standardizzato di test
- Convalidare la riduzione delle query e generare il testo del comando nei file di diagnostica
Impostare i percorsi di PQTest.exe ed estensione nel file di RunPQSDKTestSuitesSettings.json
Passare a \testframework\tests and open the RunPQSDKTestSuitesSettings.jsnel file nella cartella del repository clonato. Impostare quindi i percorsi per PQTest.exe e l'estensione nel file di configurazione:
- PQTestExePath: sostituire con il percorso di PQTest.ext. Ad esempio, C:\Users\<UserName>\.vscode\extensions\powerquery.vscode-powerquery-sdk-x.x.x-win32-x64\.nuget\Microsoft. PowerQuery.SdkTools.x.xxx.x\tools\PQTest.exe, dove <Username> è il nome della cartella del profilo utente, x.x.x è la versione corrente dell'estensione Power Query SDK e x.xxx.x è la versione corrente degli strumenti Power Query SDK.
- ExtensionPath: sostituire con il percorso del file mez di estensione. Ad esempio, C:\dev\<ConnectorName>\<ConnectorName.mez>, dove <ConnectorName> è il nome del connettore.
Note
È possibile trovare altre informazioni su tutte le variabili che è possibile impostare nel file di RunPQSDKTestSuitesSettings.json nel \testframework\tests\RunPQSDKTestSuitesSettingsTemplate.jsfornito sul modello.
Aggiornare le query sui parametri e il file di impostazioni con i dettagli specifici del connettore dell'estensione dell'origine dati
Esecuzione dello script di PowerShell.\RunPQSDKTestSuites.ps1 crea le query dei parametri e le impostazioni di test creando una cartella con < il nome >dell'estensione e le cartelle Settings e ParameterQueries sotto di essa come indicato di seguito:
- testframework\tests\ConnectorConfigs\<Nome> estensione\ParameterQueries
- testframework\tests\ConnectorConfigs\<Nome> estensione\Impostazioni
Gli esempi seguenti illustrano i percorsi di un connettore denominato Contoso:
- testframework\tests\TestSuites\Contoso\ParameterQueries
- testframework\tests\TestSuites\Contoso\Settings
Note
Aggiornare la query M nei file di query dei parametri generati per connettersi all'origine dati e recuperare le tabelle NycTaxiGreen e TaxiZoneLookup caricate in precedenza.
In alternativa, creare manualmente i file di query dei parametri e i file di impostazioni per l'origine dati eseguendo i passaggi seguenti:
- Passare alla cartella \testframework\tests\ConnectorConfigs nella cartella del repository clonato.
- Creare una copia della cartella \generica e rinominarla con il nome dell'estensione.
- Aprire ogni file nella cartella \ParameterQueries e aggiornare la query M come istruzioni fornite in tali file.
- Aprire ogni file nella cartella \Settings e aggiornare i percorsi di file di query dei parametri corretti.
Impostare le credenziali per il connettore di estensione
Assicurarsi che le credenziali siano configurate per il connettore seguendo le istruzioni per il comando set-credential .
In alternativa, generare un modello di credenziali in formato JSON per il connettore usando il comando credential-template che può essere passato al comando set-credential . Per informazioni sull'utilizzo per generare un modello di credenziali, vedere la sezione credential-template .
# <Path to PQTest.exe>.\PQTest.exe credential-template -e <Path to Extension.exe> -q "<Replace with path to any parameter query file>" --prettyPrint --authenticationKind <Specify the authentication kind (Anonymous, UsernamePassword, Key, Windows, OAuth2)>
# Example:
C:\Users\ContosoUser\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.2.3-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.126.3\tools\PQTest.exe credential-template -e "C:\dev\Contoso\Contoso.mez" -q "C:\dev\DataConnectors\testframework\tests\TestSuites\ParameterQueries\Contoso\Contoso.parameterquery.pq" --prettyPrint --authenticationKind UsernamePassword
Eseguire l'output del comando precedente e sostituire i valori segnaposto con credenziali corrette e salvarlo come file JSON ( ad esempio, contoso_cred.json).
Archiviare quindi le credenziali usando questo comando set-credential , che vengono usate dal comando compare per eseguire i test. Usando la finestra di PowerShell esistente, impostare le credenziali per l'estensione usando il file di credenziali JSON generato nel passaggio precedente. Vedere la sezione set-credential sull'utilizzo per configurare le credenziali per il connettore.
$PQTestExe = "C:\Users\ContosoUser\.vscode\extensions\powerquery.vscode-powerquery-sdk-x.x.x-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.x.xxx.x\tools\PQTest.exe"
$Extension = "C:\dev\Contoso\Contoso.mez"
# Get-Content "<Replace with path to the json credential file>" | & $PQTestExe set-credential -e $Extension -q "<Replace with the path to any parameter query file>"
# Example:
Get-Content "C:\dev\Misc\contoso_cred.json" | & C:\Users\ContosoUser\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.2.3-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.126.3\tools\PQTest.exe set-credential -p -e "C:\dev\Contoso\Contoso.mez" -q "C:\dev\DataConnectors\testframework\tests\TestSuites\Contoso\ParameterQueries\Contoso.parameterquery.pq"
Verificare che i dati di test siano configurati correttamente eseguendo i test di integrità
Per assicurarsi che le modifiche funzionino e che la configurazione dei dati venga eseguita correttamente, eseguire i test di integrità usando l'utilità RunPQSDKTestSuites.ps1 presente nella directory \testframework\tests\TestSuites come indicato di seguito:
.\RunPQSDKTestSuites.ps1 -TestSettingsList SanitySettings.json
<#
Example:
PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1 -TestSettingsList SanitySettings.json
Output:
----------------------------------------------------------------------------------------------
PQ SDK Test Framework - Test Execution - Test Results Summary for Extension: Contoso.pqx
----------------------------------------------------------------------------------------------
TestFolder TestName OutputStatus TestStatus Duration
---------- -------- ------------ ---------- --------
Sanity\Taxi AllTypes.query.pq Passed Passed 00:00:00.0227976
Sanity\Taxi AllTypesRowCount.query.pq Passed Passed 00:00:00.0001734
Sanity\Taxi AllTypesSchema.query.pq Passed Passed 00:00:00.0001085
Sanity\Zone AllTypesZone.query.pq Passed Passed 00:00:00.0010058
Sanity\Zone AllTypesZoneRowCount.query.pq Passed Passed 00:00:00.0001786
Sanity\Zone AllTypesZoneSchema.query.pq Passed Passed 00:00:00.0000920
----------------------------------------------------------------------------------------------
Total Tests: 6 | Passed: 6 | Failed: 0 | Total Duration: 00d:00h:00m:01s
----------------------------------------------------------------------------------------------
#>
Eseguire i test di integrità e standard
Eseguire usando l'utilità RunPQSDKTestSuites.ps1
Per eseguire il set completo dei test di integrità e standard o un set di test definiti dal file di impostazioni, eseguire il comando seguente per eseguire i test:
# Run all the Sanity & Standard Tests
.\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1
Per altre informazioni sull'utilità RunPQSDKTestSuites.ps1, eseguire il comando Get-Help come indicato di seguito:
Get-Help .\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> Get-Help .\RunPQSDKTestSuites.ps1 -Detailed
Eseguire con PQTest.exe
Per eseguire test specifici direttamente usando PQTest.exe, usare il comando seguente nella stessa finestra di PowerShell:
# <Path to PQTest.exe>PQTest.exe compare -p -e $Extension -pa <Replace with path to the parameter query> -q <Replace with the the path to test query>
# Example:
C:\Users\ContosoUser\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.2.3-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.114.4\tools\PQTest.exe compare -p -e "$Extension" -pa "C:\dev\DataConnectors\testframework\tests\TestSuites\Contoso\ParameterQueries\Contoso.parameterquery.pq" -q "C:\dev\DataConnectors\testframework\tests\TestSuites\Standard\Datatypes\Cast.query.pq"
Vedere la documentazione in pqtest-overview per altre informazioni sull'esecuzione di test con PQTest.exe.
Esecuzione di test di riduzione delle query
I test con qualsiasi integrità e test standard possono essere eseguiti per convalidare la riduzione delle query. Eseguire il test la prima volta per generare un file di output di diagnostica nella cartella \testframework\tests\Nome >estensione\<Diagnostics\. Le esecuzioni successive convalidano l'output generato con il file di output di diagnostica.
Eseguire test di riduzione delle query usando l'utilità RunPQSDKTestSuites.ps1
Convalidare la riduzione delle query per i test sanity e standard come indicato di seguito:
.\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
Note
In alternativa, specificare ValidateQueryFolding=True nel \testframework\tests\TestSuite\RunPQSDKTestSuitesSettings.jsnel file.
Eseguire test di riduzione delle query usando PQTest.exe
# <Path to PQText.exe> compare -p -e $Extension -pa <Replace with path to the parameter query> -q <Replace with the the path to test query> -dfp <Replace with path to the diagnostic output file>
# Example:
C:\Users\ContosoUser\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.2.3-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.114.4\tools\PQTest.exe compare -p -e "$Extension" -pa "C:\dev\DataConnectors\testframework\tests\TestSuites\ParameterQueries\Contoso\Contoso.parameterquery.pq" -q "C:\dev\DataConnectors\testframework\tests\TestSuites\Standard\Datatypes\Cast.query.pq" -dfp "C:\dev\DataConnectors\testframework\tests\TestSuites\Contoso\Diagnostics"
Conclusione
In questa sezione sono stati illustrati i passaggi per configurare le query sui parametri e i file di impostazioni, che vengono quindi necessari per convalidare il connettore di estensione eseguendo il livello di integrità e il set standardizzato di test.
Nella sezione successiva si apprenderà come aggiungere altri test. Vengono inoltre illustrati i vari comandi e opzioni disponibili all'interno del framework di test e varie impostazioni personalizzabili per le esigenze di test.
Passaggi successivi
Power Query SDK test framework parte 6 - Aggiunta dei test e comprensione di varie opzioni