Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Note
Tässä artikkelissa käsitellään testaamista PowerShell-apuohjelman avulla. Jos haluat testata Visual Studio Code Test Explorerilla, katso Power Query SDK-testikehyksen osa 5a – Laajennusliittimen testaaminen Visual Studio Code:llä.
Tämä moniosainen viittaus kattaa Power Query -liitinkehittäjille tarkoitettujen vakiotestipakettien määrittämisen ja suorittamisen. Tämä viittaus on tarkoitettu tehtäväksi järjestyksessä sen varmistamiseksi, että ympäristösi on määritetty mukautetun liittimen testaamista varten.
Tähän mennessä olet suorittanut seuraavat vaiheet:
- Ympäristön määrittäminen
- Testitiedot ladattu palvelimeen
- Testiohjelmisto ladattu palvelusta
- Opit erilaisia tiedostomuotoja ja niiden toimintoja
Olet vihdoin valmis aloittamaan laajennusliittimen vahvistamisen testiohjelmiston avulla.
Tässä osiossa:
- Opi päivittämään parametrikyselyt ja asetustiedostot
- Määritä testikehyksen polku, liitinlaajennus ja testiasetushakemisto
- Tunnistetietojen määrittäminen laajennusta varten
- Vahvista testitiedot suorittamalla saniteettitestejä
- Vahvista liitin suorittamalla standardoitu testijoukko
- Kyselyn delegoinnin vahvistaminen lähteeseen ja komentotekstien luominen diagnostiikkatiedostoissa
RunPQSDKTestSuitesSettings.json-tiedoston PQTest.exe- ja laajennuspolkujen määrittäminen
Siirry kloonatun säilön kansiossa tiedoston \testframework\tests and open the RunPQSDKTestSuitesSettings.js. Määritä sitten PQTest.exe polut ja määritystiedoston tunniste:
- PQTestExePath: Korvaa PQTest.ext-kohteen polulla. Esimerkiksi. C:\Users\<UserName>\.vscode\extensions\powerquery.vscode-powerquery-sdk-x.x.x-win32-x64\.nuget\Microsoft. PowerQuery.SdkTools.x.xxx.x\tools\PQTest.exe, jossa <Username> on käyttäjäprofiilisi kansion nimi, x.x.x on Power Query SDK-laajennuksen ja x.xxx.x on Power Query SDK -työkalujen nykyinen versio.
- ExtensionPath: Korvaa tunnisteen mez-tiedoston polulla. Esimerkki: C:\dev\<ConnectorName>\<ConnectorName.mez>, jossa <ConnectorName> on liittimesi nimi.
Note
Saat lisätietoja kaikista muuttujista, jotka voit määrittää RunPQSDKTestSuitesSettings.json -tiedostossa, annetusta mallin \testframework\tests\RunPQSDKTestSuitesSettingsTemplate.js.
Päivitä parametrikyselyt ja -asetustiedosto tietolähteen laajennusliittimeesi liittyvät tiedot
PowerShell-komentosarjan suorittaminen.\RunPQSDKTestSuites.ps1 luo parametrikyselyt ja testiasetukset luomalla kansion, jossa on <Laajennuksen nimi> ja sen alla olevat Asetukset- ja Parametrikyselyt-kansiot:
- testframework\tests\ConnectorConfigs\<Extension Name>\ParameterQueries
- testframework\tests\ConnectorConfigs\<Extension Name>\Settings
Seuraavissa esimerkeissä näytetään, miltä Contoso-liittimen polut näyttävät:
- testframework\tests\TestSuites\Contoso\ParameterQueries
- testframework\tests\TestSuites\Contoso\Settings
Note
Päivitä M-kysely luoduissa parametrikyselytiedostoissa, jotta voit muodostaa yhteyden tietolähteeseen ja noutaa aiemmin ladatut NycTaxiGreen & TaxiZoneLookup-taulukot.
Vaihtoehtoisesti voit luoda tietolähteelle parametrikyselytiedostot ja -asetustiedostot manuaalisesti suorittamalla seuraavat vaiheet:
- Siirry kloonatun säilön kansiossa \testframework\tests\ConnectorConfigs-kansioon.
- Kopioi \generic-kansio ja nimeä se uudelleen laajennuksen nimellä.
- Avaa jokainen tiedosto \ParameterQueries-kansiossa ja päivitä M-kysely kyseisissä tiedostoissa annettujen ohjeiden mukaisesti.
- Avaa jokainen tiedosto \Settings-kansiossa ja päivitä oikeat parametrikyselytiedoston polut.
Laajennusliittimen tunnistetietojen määrittäminen
Varmista, että liittimelle on määritetty tunnistetiedot set-credential-komennon ohjeiden mukaisesti.
Vaihtoehtoisesti voit luoda liittimesi tunnistetietomallin JSON-muodossa käyttämällä tunnistetietomallikomentoa , joka voidaan välittää set-credential-komentoon . Lisätietoja tunnistetietomallin luomisen käytöstä on tunnistetietomalliosiossa .
# <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
Ota edellisen komennon tulos, korvaa paikkamerkkiarvot oikeilla tunnistetiedoilla ja tallenna se JSON-tiedostona (esimerkiksi contoso_cred.json).
Tallenna sitten tunnistetiedot tällä set-credential-komennolla, jota Vertaa-komento käyttää testien suorittamiseen. Määritä tunnistetietosi käyttämällä aiemmin luotua PowerShell-ikkunaa käyttämällä edellisessä vaiheessa luotua JSON-tunnistetietotiedostoa. Lisätietoja liittimen tunnistetietojen määrittämisestä on osiossa Määritä tunnistetiedot .
$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"
Varmista, että testitiedot on määritetty oikein, suorittamalla saniteettitestit
Varmista, että muutokset toimivat ja että tiedot on määritetty oikein, suorittamalla saniteettitestit käyttämällä \testframework\tests\TestSuites-hakemistossa olevaa RunPQSDKTestSuites.ps1-apuohjelmaa seuraavasti:
.\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
----------------------------------------------------------------------------------------------
#>
Suorita mielenterveys- ja vakiotestit
Suorita RunPQSDKTestSuites.ps1-apuohjelman avulla
Jos haluat suorittaa kaikki saniteetti- ja vakiotestit tai asetustiedoston määrittämän testijoukon, suorita testit suorittamalla seuraava komento:
# Run all the Sanity & Standard Tests
.\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1
Saat lisätietoja RunPQSDKTestSuites.ps1-apuohjelmasta suorittamalla Get-Help-komennon seuraavasti:
Get-Help .\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> Get-Help .\RunPQSDKTestSuites.ps1 -Detailed
Suorita käyttämällä PQTest.exe
Jos haluat suorittaa tiettyjä testejä suoraan PQTest.exeavulla, käytä seuraavaa komentoa samassa PowerShell-ikkunassa:
# <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"
Katso pqtest-yleiskatsauksen dokumentaatiosta lisätietoja testien suorittamisesta PQTest.exeavulla.
Kyselyn delegointi lähteeseen -testien suorittaminen
Minkä tahansa järki- ja vakiotestin testit voidaan suorittaa kyselyn delegoinnin vahvistamiseksi lähteeseen. Luo diagnostiikan tulostetiedosto ensimmäisen kerran \testframework\tests\<Extension Name>\Diagnostics\ -kansioon. Seuraavat suoritukset vahvistavat diagnostiikan tulostetiedostolla luodun tuloksen.
Suorita kyselyn delegointi lähteeseen -testit RunPQSDKTestSuites.ps1 apuohjelman avulla
Vahvista Kyselyn delegointi lähteeseen Sanity & Standard -testeille seuraavasti:
.\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
Note
Vaihtoehtoisesti voit määrittää ValidateQueryFolding=True tiedoston \testframework\tests\TestSuite\RunPQSDKTestSuitesSettings.js.
Suorita Kyselyn delegointi lähteeseen -testit PQTest.exe avulla
# <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"
Johtopäätökset
Tässä osiossa käsiteltiin vaiheita niiden parametrikyselyiden ja asetustiedostojen määrittämiseksi, joita sitten tarvitaan laajennusliittimen vahvistamiseen suorittamalla saniteetti ja standardoitu testijoukko.
Seuraavassa osiossa opit lisäämään testejä. Saat myös tietoja eri komennoista ja vaihtoehdoista, jotka ovat käytettävissä testikehyksessä, sekä erilaisia mukautettavia asetuksia testaustarpeita varten.
Seuraavat vaiheet
Power Query SDK-testikehyksen osa 6: Testien lisääminen ja eri vaihtoehtojen ymmärtämisen