Fungsi Power Fx Test Engine Power Apps (tidak digunakan lagi)

Note

Mesin Uji tidak digunakan lagi dan akan dihapus dalam rilis mendatang. Gunakan sampel Power Platform Playwright untuk kemampuan otomatisasi pengujian di Power Platform dan layanan Dynamics 365.

Mesin uji menggunakan fungsi PowerFx yang ada ini:

Fungsi-fungsi ini hanya tersedia untuk digunakan di mesin uji:

Mesin pengujian menyediakan fungsi pratinjau ini:

Uji fungsi mesin

Fungsi-fungsi ini hanya tersedia untuk digunakan dengan mesin uji

Screenshot

Screenshot(fileNameOfScreenshot)

Fungsi ini menangkap tangkapan layar aplikasi pada titik waktu saat ini. File tangkapan layar disimpan ke folder output pengujian dan dengan nama yang disediakan.

Note

Hanya file jpeg dan png yang didukung.

Contoh Tangkapan Layar

Screenshot("buttonClicked.png")

Tunggu

Wait(Control, Property, Value)

Fungsi ini menunggu properti kontrol sama dengan nilai yang ditentukan.

Contoh tunggu

Wait(Label1, "Text", "0")

Fungsi pratinjau

Fungsi berikut dapat disertakan secara opsional dalam pengujian saat Power Fx Mempratinjau namespace dengan menambahkan Preview ke daftar allowPowerFxNamespaces di properti extensionModulestestSettings.

Note

  • Fungsi pratinjau tergantung pada perubahan. Saat fungsi-fungsi ini siap untuk penggunaan yang lebih luas, fungsi-fungsi ini dianggap bergerak di dalam TestEngine namespace.
  • Anda dapat menggunakan Fungsi yang Didefinisikan Pengguna untuk menggabungkan fungsi Preview guna mempermudah proses migrasi ke versi non-pratinjau.
  • Anda dapat meminta model hanya mengembalikan objek JSON yang dapat Anda urai menggunakan fungsi tersebut ParseJSON .

Pratinjau.AIExecutePrompt

Preview.AIExecutePrompt(Name, {Property: Type})

Panggil prompt Custom AI Builder dan dapatkan hasil teks dari proses eksekusi.

Note

Tinjau bagian Integrasi AI Dataverse untuk informasi tentang ketersediaan dan konfigurasi fitur ini.

Tinjau Menggunakan Preview.AIExecutePrompt untuk detail dan deskripsi selengkapnya tentang penggunaan fungsi ini.

Contoh Preview.AIExecutePrompt

Contoh berikut memanggil AI Prompt bernama Ibu Kota Negara dengan nilai parameter Negara dan mengharapkan eksekusi model mengembalikan satu kata Paris

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

Pratinjau.Dialog Persetujuan

Preview.ConsentDialog(Table({Text: Text}));

Tunggu untuk mengonfirmasi dialog izin untuk aplikasi kanvas atau halaman kustom aplikasi berbasis model

Contoh Preview.ConsentDialog

Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));

Preview.Pause

Preview.Pause()

Hentikan tes sementara dan tampilkan Inspektur Playwright jika sedang menjalankan tes interaktif

Note

Masalah Diketahui: fungsi Preview.Pause tidak membuka dengan benar inspektur untuk pac test run
Deskripsi: Fungsi Preview.Pause gagal membuka inspektur selama pac test run.
Solusi : Versi sumber terbuka dari Mesin Tes dapat digunakan untuk fungsi jeda.

Contoh Preview.Pause

Preview.Pause()

Pratinjau.PilihKontrol

Preview.SelectControl(Control: ControlName, Index: Number)

Pilih kontrol menggunakan Model Objek Dokumen

Contoh Pratinjau dari SelectControl

Pilih pertandingan pertama Button3

Preview.SelectControl(Button3,1);

Preview.PlaywrightAction

Preview.PlaywrightAction(Text, Text)

Menjalankan tindakan di halaman saat ini menggunakan Playwright Pencari CSS atau XPath

Contoh Preview.PlaywrightAction

Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");

Pratinjau.PlaywrightActionValue

Preview.PlaywrightActionValue(Text, Text, Text)

Menjalankan tindakan pada halaman saat ini menggunakan Playwright Locator CSS atau XPath dengan nilai

Contoh-contoh Preview.PlaywrightActionValue

Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");

Pratinjau.PlaywrightScript

Preview.PlaywrightScript(Text)

Jalankan skrip C# pada halaman saat ini

Note

Fungsi ini hanya diimplementasikan untuk build Debug dari versi sumber terbuka Test Engine, bukan dalam pac test run.

Contoh Tinjauan Awal.PlaywrightScript

Preview.PlaywrightScript("sample.csx")

Dengan isi dari sample.csx yang serupa dengan kode berikut:

// Copyright (c) Microsoft Corporation.
// Licensed under the MIT License.

#r "Microsoft.Playwright.dll"
#r "Microsoft.Extensions.Logging.dll"
using Microsoft.Playwright;
using Microsoft.Extensions.Logging;
using System.Linq;
using System.Threading.Tasks;

public class PlaywrightScript {
    public static void Run(IBrowserContext context, ILogger logger) {
        Execute(context, logger).Wait();
    }

    public static async Task Execute(IBrowserContext context, ILogger logger) {
        var page = context.Pages.First();

        if ( page.Url == "about:blank" ) {
            var nextPage = context.Pages.Skip(1).First();
            await page.CloseAsync();
            page = nextPage;
        }

        foreach ( var frame in page.Frames ) {
            if ( await frame.Locator("button:has-text('Button')").CountAsync() > 0 ) {
                await frame.ClickAsync("button:has-text('Button')");
            }
        }
    }
}

Pratinjau.SimulateConnector

Preview.SimulateConnector({name: Text, then: Record})

Saat panggilan dilakukan dari Power Apps ke tipe konektor yang ditemukan dalam Daftar semua konektor Power Apps

Contoh Preview.SimulateConnector

Preview.SimulateConnector({
   name: "msnweather", 
   then: {responses: { 
      daily: { 
         day: { 
            summary: "You are seeing the mock response" }
            }
         }
      }
   })

Preview.SimulateDataverse

Preview.SimulateDataverse({Action: Text, Entity: Text, Then: Table})

Pratinjau Contoh SimulateDataverse

Contoh ini, ketika panggilan dilakukan untuk membuat kueri entitas Dataverse dengan nama logika sample_combotable rekaman dihasilkan menggunakan fungsi Tabel

Preview.SimulateDataverse({
    Action: "Query",
    Entity: "sample_combotable",
    Then: Table(
    {
        'sample_name': "Item 1",
        'sample_id': 3,
        'sample_combotableid': "aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb",
        'createdon': "2024-12-02T17:52:45Z"
    },
    {
        'sample_name': "RR2",
        'sample_id': 4,
        'sample_combotableid': "bbbbbbbb-1111-2222-3333-cccccccccccc",
        'createdon': "2024-12-02T17:54:45Z"
    },
        {
        'sample_name': "RR3",
        'sample_id': 5,
        'sample_combotableid': "cccccccc-2222-3333-4444-dddddddddddd",
        'createdon': "2024-12-02T17:54:45Z"
    }
    )
});

Simulasi Dataverse dan Konektor dengan Mesin Uji (tidak digunakan lagi)