ทดสอบส่วนขยาย Dataverse ด้วย Test Engine (ไม่สนับสนุน)

หมายเหตุ

กลไกการทดสอบจะถูกยกเลิกและ จะถูกลบออกในการเผยแพร่ในอนาคต ใช้ตัวอย่าง Power Platform Playwright สําหรับความสามารถในการทดสอบระบบอัตโนมัติใน Power Platform และบริการ Dynamics 365

บทความนี้จะอธิบายวิธีการสร้างการทดสอบการรวมด้วย Dataverse ฟังก์ชันนี้ใช้ความสามารถในการเชื่อมต่อกับตาราง Power Fx Dataverse

การเชื่อมต่อกับ Dataverse

หากต้องการเปิดใช้งานการรวม Dataverse ให้เพิ่มพารามิเตอร์ enableDataverseFunctions ใน testSettingsextensionModules ของคุณ:

testSettings:
  extensionModules:
    enable: true
    parameters:
      enableDataverseFunctions: true

เมื่อคุณเปิดใช้งานการรวม Dataverse คุณจะต้องเปิด Azure CLI กับผู้ใช้หรือบริการหลักที่มีสิทธิ์ในสภาพแวดล้อม Dataverse คุณสามารถใช้คําสั่ง: az login ข้อมูลเพิ่มเติม: ลงชื่อเข้าใช้ด้วย Azure CLI

URL ของ API ที่ใช้สำหรับการรวมจะได้รับมาจากชื่อโดเมนโฮสต์ของพารามิเตอร์ Dataverse pac test run หรือโดยการกำหนดตัวแปรสภาพแวดล้อม--domain PowerShell ที่มีชื่อว่าDATAVERSE_URL

เปิดใช้งานการแสดงตัวอย่าง

ปัจจุบันความสามารถในการทดสอบส่วนขยายทั้งหมด Dataverse จำเป็นต้องใช้ ฟังก์ชันการดูตัวอย่าง หากต้องการเปิดใช้งานสิ่งเหล่านี้ ให้เพิ่ม Preview ลงใน allowPowerFxNamespaces รายการใน extensionModules

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview
    parameters:
      enableDataverseFunctions: true

การรีเซ็ตสถานะปัจจุบัน

กำหนดตัวจัดการเหตุการณ์ onTestCaseStart ใน yaml ทดสอบที่คุณสร้างขึ้นเพื่อดำเนินการทั่วไปก่อนแต่ละกรณีทดสอบ ตัวอย่างเช่น:

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))

ในตัวอย่างนี้ จะใช้ ForAll เพื่อวนซ้ำในตารางและดำเนินการกับแต่ละรายการ จากนั้นใช้ฟังก์ชัน Remove เพื่อลบแต่ละรายการออกจากตารางเพื่อให้แน่ใจว่าตารางจะว่างเปล่าก่อนที่จะดำเนินการทดสอบแต่ละครั้ง

ฟังก์ชั่นที่น่าสนใจ

ฟังก์ชันเหล่านี้มีประโยชน์เมื่อทำงานกับ Dataverse:

  • Collect: เพิ่มเรคคอร์ดลงในตาราง
  • CountRows: คืนค่าจำนวนเรคคอร์ดในตาราง
  • First: ส่งคืนระเบียนแรกในตาราง
  • ForAll: วนซ้ำในตารางและดำเนินการบางอย่างกับแต่ละรายการ
  • แพตช์: อัปเดตบันทึกที่มีอยู่
  • ลบ: ลบระเบียนที่ระบุจากตาราง

ข้อควรพิจารณา

คำนึงถึงข้อควรพิจารณาเหล่านี้เมื่อคุณเขียนขั้นตอนการทดสอบ:

  • ค่าเริ่มต้น ไม่ได้รับการรองรับ ส่งผลให้ Power Fx ตัวอย่างเช่น Patch(Accounts, Defaults(Accounts), {name:"test"}) ไม่ได้รับการรองรับ
  • คุณสามารถใช้ Collect เป็นทางเลือกแทน Patch ได้ด้วยฟังก์ชัน Defaults

กำลังทดสอบ Dataverse

คุณสามารถใช้ Power Fx ผู้ให้บริการ (powerfx) เพื่อรันการทดสอบที่โต้ตอบกับ Dataverse โดยไม่จำเป็นต้องใช้แคนวาสหรืออินเทอร์เฟซแอปที่ขับเคลื่อนด้วยโมเดล ซึ่งมีประโยชน์สำหรับการทดสอบตรรกะทางธุรกิจ ปลั๊กอิน โฟลว์ และบริการแบ็กเอนด์อื่นๆ

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"

การบูรณาการ AI

การใช้ Power Apps Test Engine แบบโอเพ่นซอร์สที่คอมไพล์ในโหมด Debug ร่วมกับการตั้งค่าการทดสอบที่เหมาะสม จะช่วยเปิดใช้งานฟังก์ชัน Preview.AIExecutePrompt ในการทดสอบของคุณ

เพิ่มสิ่งต่อไปนี้ลงในการตั้งค่าการทดสอบของคุณเพื่อเปิดใช้งานการบูรณาการ AI:

testSettings:
  extensionModules:
    enable: true
    parameters:
      enableDataverseFunctions: true
      enableAIFunctions: true

ตัวอย่างการใช้งานฟังก์ชั่น AI:

Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)