Lưu ý
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử đăng nhập hoặc thay đổi thư mục.
Cần có ủy quyền mới truy nhập được vào trang này. Bạn có thể thử thay đổi thư mục.
Lưu ý
Các tính năng xem trước không được dùng cho sản xuất và có thể có chức năng bị hạn chế. Những tính năng này khả dụng trước khi có bản phát hành chính thức để khách hàng có thể truy cập sớm và cung cấp phản hồi.
Công cụ kiểm tra sử dụng các chức năng PowerFx hiện có sau:
Các chức năng này chỉ có thể sử dụng trong Công cụ kiểm tra:
Công cụ kiểm tra cung cấp các chức năng xem trước sau :
- Xem trước.AIExecutePrompt
- Xem trước.ConsentDialog
- Xem trước.Tạm dừng
- Xem trước.Nhà viết kịchHành động
- Xem trước.Nhà viết kịchHành độngGiá trị
- Xem trước.Kịch bản
- Xem trước.ChọnĐiều khiển
- Xem trước.SimulateConnector
- Xem trước.SimulateDataverse
Kiểm tra chức năng động cơ
Các chức năng này chỉ có thể sử dụng với Công cụ kiểm tra
Ảnh chụp màn hình
Screenshot(fileNameOfScreenshot)
Chức năng này chụp ảnh màn hình ứng dụng tại thời điểm hiện tại. Tệp ảnh chụp màn hình được lưu vào thư mục đầu ra thử nghiệm với tên đã cung cấp.
Lưu ý
Chỉ hỗ trợ tệp jpeg và png.
Ví dụ về ảnh chụp màn hình
Screenshot("buttonClicked.png")
Đợi
Wait(Control, Property, Value)
Hàm này chờ thuộc tính của điều khiển bằng giá trị đã chỉ định.
Ví dụ chờ đợi
Wait(Label1, "Text", "0")
Chức năng xem trước
Các hàm sau đây có thể tùy chọn được đưa vào các bài kiểm tra khi không gian tên Power Fx Xem trước bằng cách thêm Preview vào allowPowerFxNamespaces danh sách trong extensionModules thuộc tính testSettings.
Lưu ý
- Chức năng xem trước có thể thay đổi. Khi các hàm này sẵn sàng để sử dụng rộng rãi hơn, chúng được coi là di chuyển trong không gian tên.
TestEngine - Bạn có thể sử dụng Hàm do người dùng định nghĩa để bọc các hàm nhằm giúp việc di chuyển sang các phiên bản không phải bản xem trước của hàm dễ dàng hơn.
Preview - Bạn có thể để mô hình chỉ trả về một đối tượng JSON mà bạn có thể phân tích cú pháp bằng hàm
ParseJSON.
Xem trước.AIExecutePrompt
Preview.AIExecutePrompt(Name, {Property: Type})
Gọi lời nhắc AI Builder tùy chỉnh và nhận kết quả văn bản của quá trình thực hiện.
Lưu ý
Xem lại phần Dataverse Tích hợp AI để biết thông tin về tính khả dụng và cấu hình của chức năng này.
Xem lại Sử dụng Preview.AIExecutePrompt để biết thêm chi tiết và mô tả về cách sử dụng chức năng này.
Xem trước. Ví dụ AIExecutePrompt
Ví dụ sau đây gọi AI Prompt có tên là Thủ đô quốc gia với giá trị tham số là Quốc gia và mong đợi việc thực thi mô hình trả về một từ duy nhất Paris
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)
Xem trước.ConsentDialog
Preview.ConsentDialog(Table({Text: Text}));
Chờ để xác nhận hộp thoại đồng ý cho ứng dụng canvas hoặc trang tùy chỉnh ứng dụng dựa trên mô hình
Xem trước.Ví dụ về hộp thoại đồng ý
Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));
Xem trước.Tạm dừng
Preview.Pause()
Tạm dừng thử nghiệm và hiển thị Trình kiểm tra nhà viết kịch nếu đang chạy thử nghiệm tương tác
Lưu ý
Sự cố đã biết: Chức năng Preview.Pause không mở đúng trình kiểm tra để chạy thử nghiệm pac
Mô tả: Hàm Preview.Pause không mở được trình kiểm tra trong quá trình pac test run.
Giải pháp thay thế: Phiên bản mã nguồn mở của Test Engine có thể được sử dụng cho chức năng tạm dừng.
Xem trước.Tạm dừng Ví dụ
Preview.Pause()
Xem trước.ChọnĐiều khiển
Preview.SelectControl(Control: ControlName, Index: Number)
Chọn một điều khiển bằng cách sử dụng Document Object Model
Xem trước. Ví dụ SelectControl
Chọn trận đấu đầu tiên Button3
Preview.SelectControl(Button3,1);
Xem trước.Nhà viết kịchHành động
Preview.PlaywrightAction(Text, Text)
Thực hiện một hành động trên trang hiện tại bằng cách sử dụng Trình phát kịch CSS hoặc XPath Trình định vị
Xem trước.Nhà viết kịchVí dụ về hành động
Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");
Xem trước.Nhà viết kịchHành độngGiá trị
Preview.PlaywrightActionValue(Text, Text, Text)
Thực hiện một hành động trên trang hiện tại bằng cách sử dụng Playwright CSS hoặc XPath Locator với một giá trị
Xem trước.Nhà viết kịchHành độngGiá trịVí dụ
Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");
Xem trước.Kịch bản
Preview.PlaywrightScript(Text)
Thực hiện tập lệnh C# trên trang hiện tại
Lưu ý
Chức năng này chỉ được triển khai cho bản dựng Debug từ phiên bản mã nguồn mở của Test Engine chứ không phải trong lần chạy thử pac.
Xem trước.Ví dụ về kịch bản của nhà viết kịch
Preview.PlaywrightScript("sample.csx")
Với nội dung tương tự như đoạn mã sau: sample.csx
// 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')");
}
}
}
}
Xem trước.SimulateConnector
Preview.SimulateConnector({name: Text, then: Record})
Khi một cuộc gọi được thực hiện từ Power Apps đến một loại kết nối được tìm thấy từ Danh sách tất cả Power Apps các kết nối
Xem trước.Ví dụ SimulateConnector
Preview.SimulateConnector({
name: "msnweather",
then: {responses: {
daily: {
day: {
summary: "You are seeing the mock response" }
}
}
}
})
Xem trước.SimulateDataverse
Preview.SimulateDataverse({Action: Text, Entity: Text, Then: Table})
Xem trước.SimulateDataverse Ví dụ
Ví dụ này khi một cuộc gọi được thực hiện để truy vấn Dataverse thực thể có tên logic sample_combotable nó trả về các bản ghi bằng cách sử dụng hàm Bảng
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"
}
)
});
Bài viết liên quan
Dataverse và Mô phỏng kết nối với Công cụ thử nghiệm (xem trước)