Нотатка
Доступ до цієї сторінки потребує авторизації. Можна спробувати ввійти або змінити каталоги.
Доступ до цієї сторінки потребує авторизації. Можна спробувати змінити каталоги.
Нотатка
Підготовчі функції призначені для невиробничого використання і можуть бути обмежені. Ці функції доступні до офіційного випуску, щоб клієнти могли ознайомитися з ними заздалегідь і залишити відгуки.
Тестовий движок використовує такі існуючі функції PowerFx:
Ці функції доступні для використання лише в тестовому двигуні:
Тестовий движок надає такі функції попереднього перегляду:
- Preview.AIExecutePrompt
- Попередній перегляд.Діалог згоди
- Попередній перегляд.Пауза
- Прев’ю.Дія драматурга
- Preview.PlaywrightActionValue
- Прев’ю.Сценарій драматурга
- Попередній перегляд.SelectControl
- Preview.SimulateConnector
- Preview.SimulateDataverse
Перевірка функцій двигуна
Ці функції доступні лише для використання з Test engine
Знімок екрана
Screenshot(fileNameOfScreenshot)
Ця функція робить знімок екрана програми в поточний момент часу. Файл знімка екрана зберігається в папку тестового виводу з наданим ім’ям.
Нотатка
Підтримуються лише файли jpeg та png.
Приклад скріншота
Screenshot("buttonClicked.png")
Очікування
Wait(Control, Property, Value)
Ця функція чекає, поки властивість елемента управління дорівнюватиме вказаному значенню.
Приклад очікування
Wait(Label1, "Text", "0")
Функції попереднього перегляду
Наступні функції за бажанням можуть бути включені в тести при просторі Power Fx імен Preview шляхом додавання Preview до allowPowerFxNamespaces списку у властивості extensionModulesтестуSettings.
Нотатка
- Функції попереднього перегляду можуть змінюватися. У міру того, як ці функції стають готовими до ширшого використання, вони розглядаються як такі, що переміщуються в
TestEngineпросторі імен. - Ви можете використовувати функції, визначені користувачем, для обгортання
Previewфункцій, щоб спростити міграцію до версій функції без попереднього перегляду. - Ви можете, щоб модель повертала лише об’єкт JSON, який ви могли б проаналізувати за допомогою
ParseJSONфункції.
Preview.AIExecutePrompt
Preview.AIExecutePrompt(Name, {Property: Type})
Викличте підказку AI Builder Custom та отримайте текстові результати виконання.
Нотатка
Перегляньте розділ «Інтеграція Dataverse зі штучним інтелектом », щоб отримати інформацію про доступність і конфігурацію цієї функції.
Перегляньте використання Preview.AIExecutePrompt для отримання більш детальної інформації та опису використання цієї функції.
Приклад Preview.AIExecutePrompt
У наведеному нижче прикладі викликається запит штучного інтелекту з іменем Country Capital зі значенням параметрів Country і очікує, що виконання моделі поверне одне слово Paris
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)
Попередній перегляд.Діалог згоди
Preview.ConsentDialog(Table({Text: Text}));
Зачекайте, доки не з’явиться діалогове вікно згоди для користувацької сторінки програми на основі полотна або програми, керованої моделлю
Приклад Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));
Попередній перегляд.Пауза
Preview.Pause()
Призупиніть тест і відобразіть Ревізора драматурга, якщо ви проводите інтерактивний тест
Нотатка
Відома проблема: Попередній перегляд.Функція паузи не відкриває належним чином інспектор для тестового запуску pac
Опис: Функція Preview.Pause не відкриває інспектор під час. pac test run
Спосіб вирішення: Версія Test Engine з відкритим вихідним кодом може бути використана для призупинення функціональності.
Приклад Preview.Pause
Preview.Pause()
Попередній перегляд.SelectControl
Preview.SelectControl(Control: ControlName, Index: Number)
Вибір елемента керування за допомогою об’єктної моделі документа
Приклад Preview.SelectControl
Вибрати перший Button3 матч
Preview.SelectControl(Button3,1);
Прев’ю.Дія драматурга
Preview.PlaywrightAction(Text, Text)
Виконайте дію на поточній сторінці за допомогою драматурга CSS або XPath локатора
Прев’ю.ДраматургПриклади дій
Preview.PlaywrightAction("//button", "click");
Preview.PlaywrightAction("//button", "exists");
Preview.PlaywrightAction("//button", "wait");
Preview.PlaywrightActionValue
Preview.PlaywrightActionValue(Text, Text, Text)
Виконайте дію на поточній сторінці за допомогою Драматурга CSS або XPath Локатора зі значенням
Preview.PlaywrightActionValue приклади
Preview.PlaywrightAction("//input[@data-id='1']", "fill", "Hello");
Прев’ю.Сценарій драматурга
Preview.PlaywrightScript(Text)
Виконайте скрипт C# на поточній сторінці
Нотатка
Ця функція реалізована лише для збірки Debug з відкритої версії Test Engine, а не в тестовому запуску pac.
Приклад Preview.PlaywrightScript
Preview.PlaywrightScript("sample.csx")
Зі змістом 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')");
}
}
}
}
Preview.SimulateConnector
Preview.SimulateConnector({name: Text, then: Record})
Коли виклик здійснюється з Power Apps до типу конектора, знайденого зі списку всіх Power Apps конекторів
Приклад 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})
Приклад Preview.SimulateDataverse
У цьому прикладі, коли виконується виклик для запиту Dataverse сутності з логічним іменем sample_combotable , вона повертає записи за допомогою функції Таблиця
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"
}
)
});
Пов’язані статті
Dataverse та симуляція з’єднувача за допомогою Test Engine (попередній перегляд)