Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Deze naslaginformatie over meerdere onderdelen heeft betrekking op het instellen en uitvoeren van een standaardpakket met tests voor Ontwikkelaars van Power Query-connectors. Deze verwijzing is bedoeld om sequentieel te worden uitgevoerd om ervoor te zorgen dat uw omgeving is ingesteld voor het testen van uw aangepaste connector.
Note
Dit artikel bevat informatie over testen met behulp van de Visual Studio Code Test Explorer. Zie Power Query SDK-testframework deel 5b: de extensieconnector testen met PowerShell voor de methode van het PowerShell-hulpprogramma.
Tot nu toe hebt u de volgende stappen uitgevoerd:
- De omgeving instellen
- De testgegevens geüpload
- Het testpakket gedownload
- Verschillende bestandsindelingen en hun functionaliteit geleerd
U bent klaar om te beginnen met het verifiëren van uw extensieconnector met het testpakket. Deze sectie is gericht op het gebruik van de geïntegreerde Test Explorer in Visual Studio Code, die een uitgebreide gebruikersinterface biedt voor het detecteren, uitvoeren en foutopsporingstests. Deze integratie maakt gebruik van de Visual Studio Code Testing API en voert tests uit met behulp van de PQTest utility's run-compare opdracht (zie PQTest run-compare documentation).
In deze sectie gaat u het volgende doen:
- Uw werkruimte configureren voor Test Explorer
- Het testinstellingenbestand maken en configureren
- Tests detecteren en uitvoeren met behulp van de gebruikersinterface
- Testresultaten weergeven en uitvoer vergelijken
Prerequisites
Als u de testverkenner-integratie wilt gebruiken, moet u de volgende vereisten hebben:
Visual Studio Code: versie 1.100 of hoger.
Power Query SDK-extensie: Zorg ervoor dat de Power Query SDK-extensie is geïnstalleerd en bijgewerkt naar versie 0.7.0 of hoger. Uw connectorproject wordt herkend door de Power Query SDK, zoals aangegeven door de sectie Power Query SDK in het deelvenster Explorer waarin de projecttaken worden weergegeven.
Configuratie
Als u testverkenner wilt inschakelen om uw tests te vinden en uit te voeren, moet u een of meer specifieke testinstellingen en uw Visual Studio Code werkruimte-instellingen configureren.
1. Testinstellingenbestand (.testsettings.json)
Het .testsettings.json bestand stuurt de testdetectie aan. Dit bestand is functioneel identiek aan het instellingenbestand (.settings) dat is geïntroduceerd in de specificatie van de testindeling, maar gebruikt de .testsettings.json extensie voor expliciete identificatie door testverkenner.
U kunt een nieuw .testsettings.json bestand maken of een bestaand instellingenbestand migreren door de naam ervan te wijzigen om de .testsettings.json extensie te gebruiken. Plaats het bestand in uw project (bijvoorbeeld in uw Settings map) met de benodigde configuratie.
Belangrijk: Paden die zijn opgegeven in het .testsettings.json bestand (zoals DiagnosticsPathQueryFilePath, enzovoort) zijn naar verwachting relatief ten opzichte van de locatie van het instellingenbestand zelf.
Voorbeeld .testsettings.json:
{
"QueryFilePath": "../TestSuites/contoso.query.pq",
"ParameterQueryFilePath": "../ParameterQueries/contoso.parameterquery.pq",
"DiagnosticsPath": "../Diagnostics",
"FailOnMissingOutputFile": true
}
2. De extensie configureren
U moet de Power Query SDK configureren met de locatie van uw testinstellingen, het extensiebestand van de connector en het hulpprogramma PQTest.
Open uw instellingen in Visual Studio Code.
- Werkruimte-instellingen (voor projectspecifieke paden): Open het opdrachtenpalet (Ctrl+Shift+P of Cmd+Shift+P), typ Voorkeuren: Werkruimte-instellingen openen (JSON) en selecteer deze.
- Gebruikersinstellingen (voor globale paden): Open het opdrachtenpalet, typ Voorkeuren: Gebruikersinstellingen openen (JSON) en selecteer deze.
Voeg de volgende configuraties toe:
-
powerquery.sdk.tools.location: Het absolute pad naar de PQTest-installatiemap (metPQTest.exe). Deze instelling kan worden gedefinieerd in gebruikers - ofwerkruimte-instellingen .- Voorbeeld:
"C:\\Users\\<username>\\.vscode\\extensions\\powerquery.vscode-powerquery-sdk-<version>\\.nuget\\Microsoft.PowerQuery.SdkTools.<version>\\tools"
- Voorbeeld:
-
powerquery.sdk.test.settingsFiles: De lijst met testinstellingenbestanden die moeten worden gedetecteerd. Accepteert één bestandspad, een mappad (om alle.testsettings.jsonbestanden binnen te detecteren) of een matrix van bestands-/mappaden. (Werkruimte-instelling ) -
powerquery.sdk.test.ExtensionPaths: De lijst met connectorextensiebestanden (.mez) die u wilt testen. Accepteert één bestandspad of een matrix met paden. Als dit niet is opgegeven, gebruiktpowerquery.sdk.defaultExtensionde SDK (die één pad ondersteunt). (Werkruimte-instelling )
-
Voorbeeld .vscode/settings.json:
{
"powerquery.sdk.tools.location": "C:\\Users\\<username>\\.vscode\\extensions\\powerquery.vscode-powerquery-sdk-0.7.0-win32-x64\\.nuget\\Microsoft.PowerQuery.SdkTools.2.150.3\\tools",
"powerquery.sdk.test.settingsFiles": [
"${workspaceFolder}/Tests/Settings/MyConnector.testsettings.json"
],
"powerquery.sdk.test.ExtensionPaths": [
"${workspaceFolder}/bin/AnyCPU/Debug/MyConnector.mez"
]
}
Tip
U kunt variabelen ${workspaceFolder} gebruiken om paden te maken ten opzichte van de hoofdmap van uw project. Relatieve paden in settings.json worden omgezet ten opzichte van de hoofdmap van de werkruimte.
3. Referenties configureren
Als voor uw connector verificatie is vereist, moet u geldige referenties opslaan voordat u tests uitvoert. De Power Query SDK biedt een taak voor het rechtstreeks beheren van referenties vanuit de gebruikersinterface van Visual Studio Code.
Raadpleeg de sectie Referenties instellen in het overzicht van de Power Query SDK voor gedetailleerde instructies.
Detectie testen
Zodra de test is geconfigureerd, kunt u uw tests detecteren in de weergave Test Explorer.
Open de weergave Testing in Visual Studio Code (Selecteer het beakerpictogram in de activiteitenbalk).
De bestanden met testinstellingen worden weergegeven.
Vouw de knooppunten uit om de gedetecteerde tests te zien. De hiërarchie weerspiegelt de mapstructuur.
Tests vernieuwen
Als u nieuwe tests toevoegt, de instellingen wijzigt of de detectietest om een of andere reden mislukt, kunt u de detectie vernieuwen:
Alle tests vernieuwen: selecteer de knop Alle tests vernieuwen (cirkelpijlpictogram) boven aan het deelvenster TestVerkenner om tests voor alle instellingenbestanden opnieuw te ontdekken.
Vernieuwingstests waarnaar wordt verwezen door een bestand met testinstellingen: beweeg de muisaanwijzer over een specifiek bestand met testinstellingen en selecteer de knop Tests vernieuwen (pictogram ronde pijl) om tests voor alleen dat bestand opnieuw te ontdekken.
Tests uitvoeren
U kunt tests uitvoeren op verschillende granulariteitsniveaus rechtstreeks vanuit de gebruikersinterface:
Alles uitvoeren: selecteer het pictogram Testen uitvoeren (pictogram Afspelen) boven aan het deelvenster.
Groep/map uitvoeren: beweeg de muisaanwijzer over een map- of instellingenitem en selecteer de knop Test uitvoeren .
Afzonderlijke test uitvoeren: beweeg de muisaanwijzer over een specifiek testitem en selecteer de knop Test uitvoeren .
Note
Als u een instellingenitem uitvoert dat nog niet is gedetecteerd, detecteert de extensie automatisch de tests voordat deze worden uitgevoerd.
Wanneer tests worden uitgevoerd, worden de statuspictogrammen in realtime bijgewerkt om de voortgang weer te geven (actief, geslaagd of mislukt).
Resultaten en foutopsporing weergeven
In het deelvenster Testresultaten (standaard in het onderste deelvenster) worden de onbewerkte testresultaten van PQTest of eventuele foutberichten weergegeven. Er wordt ook de laatste uitvoeringsgeschiedenis weergegeven, met geslaagde en mislukte tests.
Diff-weergave voor fouten
Als een test mislukt omdat de uitvoer niet overeenkomt met het verwachte resultaat, biedt Test Explorer een ingebouwde diff-weergave. Selecteer de fout in het deelvenster Testresultaten om een vergelijking naast elkaar te zien van de werkelijke versus verwachte uitvoer.
Diagnostische gegevens over het vouwen van query's
Als uw testconfiguratie query folding-validatie inschakelt (door een DiagnosticsPathop te geven), vergelijkt de extensie ook de gegenereerde diagnostische gegevens op basis van de verwachte basislijn.
Als een test mislukt omdat een diagnose niet overeenkomt, kunt u het verschil tussen de bestanden Werkelijke en Verwachte diagnostische gegevens weergeven door de fout te selecteren in het deelvenster Testresultaten.
Verwachte uitvoer weergeven
U kunt snel het verwachte uitvoerbestand (.pqout) voor elke test bekijken. Selecteer het pictogram Verwachte testuitvoer weergeven (klembord) dat wordt weergegeven wanneer u de muisaanwijzer over een test beweegt of klik met de rechtermuisknop op het testitem en selecteer Verwachte testuitvoer weergeven in het contextmenu. Met deze actie opent u het bijbehorende .pqout bestand in de editor.
Troubleshooting
Als u problemen ondervindt, controleert u de Power Query SDK uitvoerkanaal voor logboeken. Hiermee kunt u controleren of de PQTest run-compare opdracht wordt uitgevoerd en eventuele onverwachte gedragingen identificeren.
Veelvoorkomende problemen
-
PQTest.exe niet gevonden: Controleer of de
powerquery.sdk.tools.locationinstelling naar het juiste absolute pad van de PQTest-installatiemap verwijst. -
Ongeldige QueryFilePath- of Geen tests gedetecteerd: controleer of de paden in het bestand met testinstellingen juist zijn.
QueryFilePathmoet verwijzen naar een geldig.query.pqbestand of een map die deze bevat. Houd er rekening mee dat relatieve paden.testsettings.jsonrelatief zijn ten opzichte van het instellingenbestand zelf. - Als u een instellingenbestand uitbreidt, doet dit niets: als een knooppunt in Test Explorer geen tests weergeeft, gebruikt u de opdracht Tests vernieuwen (pictogram vernieuwen inline met het instellingenitem) om detectie opnieuw te activeren.
Conclusion
In deze sectie hebt u gezien hoe u de Visual Studio Code Test Explorer kunt gebruiken om uw connectortests efficiënt te detecteren, uit te voeren en fouten op te sporen. Deze op gebruikersinterface gebaseerde benadering biedt een gestroomlijnd alternatief voor de opdrachtregelprogramma's.
In de volgende sectie leert u hoe u uw eigen aangepaste tests toevoegt aan het framework.