หมายเหตุ
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลอง ลงชื่อเข้าใช้หรือเปลี่ยนไดเรกทอรีได้
การเข้าถึงหน้านี้ต้องได้รับการอนุญาต คุณสามารถลองเปลี่ยนไดเรกทอรีได้
Note
บทความนี้ครอบคลุมการทดสอบโดยใช้ยูทิลิตี้ PowerShell สําหรับการทดสอบโดยใช้ Visual Studio Code Test Explorer โปรดดู Power Query SDK ทดสอบเฟรมเวิร์กส่วนที่ 5a - การทดสอบตัวเชื่อมต่อส่วนขยายของคุณด้วย Visual Studio Code
การอ้างอิงหลายส่วนนี้ครอบคลุมถึงการตั้งค่าและการเรียกใช้งานชุดการทดสอบมาตรฐานสําหรับนักพัฒนาตัวเชื่อมต่อ Power Query การอ้างอิงนี้มีไว้เพื่อทําตามลําดับเพื่อให้แน่ใจว่า สภาพแวดล้อมของคุณถูกตั้งค่าสําหรับการทดสอบตัวเชื่อมต่อแบบกําหนดเองของคุณ
ถึงตอนนี้ คุณทําตามขั้นตอนต่อไปนี้เสร็จแล้ว:
- ตั้งค่าสภาพแวดล้อม
- อัปโหลดข้อมูลทดสอบแล้ว
- ดาวน์โหลดชุดการทดสอบแล้ว
- เรียนรู้รูปแบบไฟล์ต่าง ๆ และฟังก์ชันการทํางานของพวกเขา
ในที่สุดคุณก็พร้อมที่จะเริ่มตรวจสอบตัวเชื่อมต่อส่วนขยายของคุณด้วยชุดการทดสอบ
ในส่วนนี้ คุณ:
- เรียนรู้วิธีการอัปเดตคิวรีพารามิเตอร์และไฟล์การตั้งค่า
- ตั้งค่าเส้นทางสําหรับเฟรมเวิร์กการทดสอบ ส่วนขยายตัวเชื่อมต่อ และการตั้งค่าการทดสอบไดเรกทอรี
- ตั้งค่าข้อมูลประจําตัวสําหรับส่วนขยาย
- ตรวจสอบความถูกต้องของข้อมูลทดสอบโดยการรันการทดสอบสติ
- ตรวจสอบตัวเชื่อมต่อของคุณโดยการเรียกใช้ชุดการทดสอบที่ได้มาตรฐาน
- ตรวจสอบการพับคิวรีและสร้างข้อความคําสั่งในไฟล์การวินิจฉัย
ตั้งค่า PQTest.exe และเส้นทางส่วนขยายในไฟล์ RunPQSDKTestSuitesSettings.json
นําทางไปยัง \testframework\tests and open the RunPQSDKTestSuitesSettings.jsบนไฟล์ในโฟลเดอร์ repo ที่ถูกลอกแบบ จากนั้นตั้งค่าเส้นทางสําหรับ PQTest.exe และส่วนขยายในไฟล์กําหนดค่า:
- PQTestExePath: แทนที่ ด้วยเส้นทางไปยัง PQTest.ext ตัวอย่างเช่น C:\Users\<UserName>\.vscode\extensions\powerquery..c vscode-powerquery-sdk-x.x.x-win32-x64\.nuget\Microsoft PowerQuery.SdkTools.x.xxx.x\tools\PQTest.exe, ที่ <Username> คือชื่อของโฟลเดอร์โปรไฟล์ผู้ใช้ของคุณ x.x.x เป็นส่วนขยาย Power Query SDK รุ่นปัจจุบัน และ x.xxx.x เป็นเวอร์ชันปัจจุบันของเครื่องมือ Power Query SDK
- ExtensionPath: แทนที่ ด้วยเส้นทางไปยังแฟ้ม mez ส่วนขยาย ตัวอย่างเช่น C:\dev\<ConnectorName>\<ConnectorName.mez> โดยที่ <ConnectorName> คือชื่อของตัวเชื่อมต่อของคุณ
Note
คุณสามารถค้นหาข้อมูลเพิ่มเติมเกี่ยวกับตัวแปรทั้งหมดที่คุณสามารถตั้งค่าได้ในไฟล์ RunPQSDKTestSuitesSettings.json ใน \testframework\tests\RunPQSDKTestSuitesSettingsTemplate.jsที่ระบุในเท็มเพลต
อัปเดตคิวรีพารามิเตอร์และไฟล์การตั้งค่าที่มีรายละเอียดเฉพาะสําหรับตัวเชื่อมต่อส่วนขยายแหล่งข้อมูลของคุณ
การเรียกใช้สคริปต์ PowerShell\RunPQSDKTestSuites.ps1 สร้างคิวรีพารามิเตอร์และทดสอบการตั้งค่าโดยการสร้างโฟลเดอร์ที่มี <ชื่อ>ส่วนขยายและโฟลเดอร์การตั้งค่าและ ParameterQueries ภายใต้รายการต่อไปนี้:
- testframework\tests\ConnectorConfigs\<Extension Name>\ParameterQueries
- testframework\tests\ConnectorConfigs\<Extension Name>\Settings
ตัวอย่างต่อไปนี้แสดงสิ่งที่เส้นทางสําหรับตัวเชื่อมต่อที่ชื่อว่า Contoso จะมีลักษณะดังนี้:
- testframework\tests\TestSuites\Contoso\ParameterQueries
- testframework\tests\TestSuites\Contoso\Settings
Note
อัปเดตคิวรี M ในไฟล์คิวรีพารามิเตอร์ที่สร้างขึ้นเพื่อเชื่อมต่อกับแหล่งข้อมูลของคุณ และเรียกใช้ตาราง NycTaxiGreen & TaxiZoneLookup ที่อัปโหลดก่อนหน้านี้
อีกวิธีหนึ่งคือสร้างไฟล์คิวรีพารามิเตอร์และไฟล์การตั้งค่าสําหรับแหล่งข้อมูลของคุณด้วยตนเองโดยทําตามขั้นตอนด้านล่าง:
- นําทางไปยังโฟลเดอร์ \testframework\tests\ConnectorConfigs ภายใต้โฟลเดอร์ repo ที่ถูกลอกแบบ
- ทําสําเนาของโฟลเดอร์ \generic และเปลี่ยนชื่อเป็นชื่อนามสกุล
- เปิดแต่ละไฟล์ในโฟลเดอร์ \ParameterQueries และอัปเดตคิวรี M ตามคําแนะนําที่ระบุไว้ในไฟล์เหล่านั้น
- เปิดแต่ละไฟล์ในโฟลเดอร์ \Settings และอัปเดตเส้นทางของไฟล์แบบสอบถามพารามิเตอร์ที่ถูกต้อง
ตั้งค่าข้อมูลประจําตัวสําหรับตัวเชื่อมต่อส่วนขยายของคุณ
ตรวจสอบให้แน่ใจว่ามีการตั้งค่าข้อมูลประจําตัวสําหรับตัวเชื่อมต่อของคุณโดยทําตามคําแนะนําสําหรับคําสั่งตั้งค่าข้อมูลประจําตัว
อีกวิธีหนึ่งคือ สร้างเทมเพลตข้อมูลประจําตัวในรูปแบบ JSON สําหรับตัวเชื่อมต่อของคุณโดยใช้คําสั่ง เทมเพลตข้อมูลประจําตัว ที่สามารถส่งผ่านไปยังคําสั่ง ข้อมูลประจําตัวการตั้งค่า ได้ สําหรับข้อมูลเกี่ยวกับการใช้งานเพื่อสร้างเทมเพลตข้อมูลประจําตัว โปรดดูที่ส่วน 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
รับผลลัพธ์จากคําสั่งก่อนหน้าและแทนที่ค่าตัวแทนข้อความด้วยข้อมูลประจําตัวที่ถูกต้องและบันทึกเป็นไฟล์ JSON (ตัวอย่างเช่น contoso_cred.json)
จากนั้นจะจัดเก็บข้อมูลประจําตัวโดยใช้คําสั่ง set-credential นี้ ซึ่งใช้โดยคําสั่ง เปรียบเทียบ เพื่อเรียกใช้การทดสอบ การใช้หน้าต่าง PowerShell ที่มีอยู่ ให้ตั้งค่าข้อมูลประจําตัวสําหรับส่วนขยายของคุณโดยใช้ไฟล์ข้อมูลประจําตัว JSON ที่สร้างขึ้นในขั้นตอนก่อนหน้า ดูส่วน ข้อมูลประจําตัวเกี่ยวกับ การใช้งานสําหรับการตั้งค่าข้อมูลประจําตัวสําหรับตัวเชื่อมต่อของคุณ
$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"
ตรวจสอบความถูกต้องของข้อมูลการทดสอบได้รับการตั้งค่าอย่างถูกต้องโดยการรันการทดสอบสติ
เพื่อให้แน่ใจว่าการเปลี่ยนแปลงกําลังทํางานอยู่และการตั้งค่าข้อมูลเสร็จสิ้นอย่างถูกต้อง ให้เรียกใช้การทดสอบสติโดยใช้ยูทิลิตี้ RunPQSDKTestSuites.ps1 ที่มีอยู่ในไดเรกทอรี \testframework\tests\TestSuites ดังนี้:
.\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
----------------------------------------------------------------------------------------------
#>
เรียกใช้การทดสอบสติและมาตรฐาน
เรียกใช้โดยใช้ยูทิลิตี้ RunPQSDKTestSuites.ps1
หากต้องการเรียกใช้ชุดการทดสอบสติและการทดสอบมาตรฐานที่สมบูรณ์หรือชุดการทดสอบที่กําหนดโดยไฟล์การตั้งค่า ให้เรียกใช้คําสั่งต่อไปนี้เพื่อดําเนินการทดสอบ:
# Run all the Sanity & Standard Tests
.\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1
เมื่อต้องการเรียนรู้เพิ่มเติมเกี่ยวกับอรรถประโยชน์ของ RunPQSDKTestSuites.ps1 ให้เรียกใช้คําสั่ง รับความช่วยเหลือ ดังนี้:
Get-Help .\RunPQSDKTestSuites.ps1
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> Get-Help .\RunPQSDKTestSuites.ps1 -Detailed
เรียกใช้โดยใช้ PQTest.exe
เมื่อต้องการเรียกใช้การทดสอบแบบเฉพาะโดยตรงโดยใช้ PQTest.exeให้ใช้คําสั่งต่อไปนี้ในหน้าต่าง 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"
ตรวจทานเอกสารใน ภาพรวม pqtest สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการทดสอบการรันด้วย PQTest.exe
การเรียกใช้การทดสอบการพับคิวรี
สามารถเรียกใช้การทดสอบภายใต้สติและการทดสอบมาตรฐานใด ๆ เพื่อตรวจสอบการพับคิวรี เรียกใช้การทดสอบในครั้งแรกเพื่อสร้างไฟล์เอาต์พุตการวินิจฉัยภายใต้โฟลเดอร์ \testframework\tests\<Extension Name>\Diagnostics\ เรียกใช้ในภายหลังตรวจสอบเอาต์พุตที่สร้างขึ้นด้วยไฟล์เอาต์พุตการวินิจฉัย
เรียกใช้การทดสอบการพับคิวรีโดยใช้ยูทิลิตี้ RunPQSDKTestSuites.ps1
ตรวจสอบความถูกต้องของการพับคิวรีสําหรับการทดสอบสติและมาตรฐานดังนี้:
.\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
# Example:
# PS C:\dev\DataConnectors\testframework\tests\TestSuites> .\RunPQSDKTestSuites.ps1 -ValidateQueryFolding
Note
หรือระบุ ValidateQueryFolding=True ใน \testframework\tests\TestSuite\RunPQSDKTestSuitesSettings.jsบนไฟล์
เรียกใช้การทดสอบการพับคิวรีโดยใช้ 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"
บทสรุป
ส่วนนี้ครอบคลุมขั้นตอนในการตั้งค่าคิวรีพารามิเตอร์และไฟล์การตั้งค่าซึ่งจากนั้นจะต้องตรวจสอบตัวเชื่อมต่อส่วนขยายของคุณโดยการเรียกใช้การทดสอบสติและชุดมาตรฐาน
ในส่วนถัดไป คุณจะได้เรียนรู้วิธีการเพิ่มการทดสอบเพิ่มเติม คุณยังได้เรียนรู้เกี่ยวกับคําสั่งและตัวเลือกต่าง ๆ ที่พร้อมใช้งานภายในเฟรมเวิร์กการทดสอบ และการตั้งค่าที่สามารถกําหนดเองได้ต่าง ๆ สําหรับความต้องการทดสอบของคุณ
ขั้นตอนต่อไป
เฟรมเวิร์กการทดสอบ Power Query SDK ส่วนที่ 6 - การเพิ่มการทดสอบของคุณและทําความเข้าใจตัวเลือกต่าง ๆ