Бележка
Достъпът до тази страница изисква удостоверяване. Можете да опитате да влезете или да промените директориите.
Достъпът до тази страница изисква удостоверяване. Можете да опитате да промените директориите.
Бележка
Функциите за предварителен преглед не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.
Тестовият двигател използва следните съществуващи функции на PowerFx:
Тези функции са достъпни за използване само в тестовата машина:
Тестовият двигател предоставя следните функции за предварителен преглед:
- Preview.AIExecutePrompt
- Preview.ConsentDialog
- Преглед.Пауза
- Преглед.ДраматургДействие
- Preview.PlaywrightActionValue
- Preview.PlaywrightScript
- Преглед.SelectControl
- Preview.SimulateConnector
- Preview.SimulateDataverse
Функции на тестовия двигател
Тези функции са налични само за използване с тестов двигател
Екранна снимка
Screenshot(fileNameOfScreenshot)
Тази функция заснема екранна снимка на приложението в текущия момент. Файлът с екранна снимка се записва в тестовата изходна папка и с предоставеното име.
Бележка
Поддържат се само jpeg и png файлове.
Пример за екранна снимка
Screenshot("buttonClicked.png")
Изакване
Wait(Control, Property, Value)
Тази функция изчаква свойството на контролата да се изравни с зададената стойност.
Пример за изчакване
Wait(Label1, "Text", "0")
Функции за визуализация
Следните функции могат по избор да бъдат включени в тестове при Power Fx предварителен преглед чрез добавяне Preview към списъка allowPowerFxNamespaces в свойството extensionModules на testSettings.
Бележка
- Функциите за визуализация подлежат на промяна. Тъй като тези функции станат готови за по-широко използване, се счита, че те се преместват в пространството на
TestEngineимена. - Можете да използвате дефинирани от потребителя функции, за да обвиете
Previewфункциите, за да улесните миграцията към версии на функцията, които не са за предварителен преглед. - Можете да накарате модела да върне само JSON обект, който можете да анализирате с помощта на
ParseJSONфункцията.
Preview.AIExecutePrompt
Preview.AIExecutePrompt(Name, {Property: Type})
Извикайте персонализирана AI Builder подкана и получете текстови резултати от изпълнението.
Бележка
Прегледайте раздела Dataverse за интегриране на AI за информация относно наличността и конфигурацията на тази функция.
Прегледайте с помощта на Preview.AIExecutePrompt за повече подробности и описания на използването на тази функция.
Пример за Preview.AIExecutePrompt
Следващият пример извиква подканата с изкуствен интелект, наречена Държава столица , със стойност на параметрите Държава и очаква изпълнението на модела да върне една дума Париж
Assert("Paris" = Preview.AIExecutePrompt("Country Capital", { Country: "France" }).Text)
Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: Text}));
Изчакайте да потвърдите диалогов прозорец за съгласие за приложение за платно или персонализирана страница на приложение, управлявано от модел
Пример за Preview.ConsentDialog
Preview.ConsentDialog(Table({Text: "Your Dialog Title"}));
Преглед.Пауза
Preview.Pause()
Поставете теста на пауза и покажете инспектора на драматурга, ако изпълнявате интерактивен тест
Бележка
Известен проблем: Preview.Pause функцията не отваря правилно инспектора за pac test run
Описание: Функцията Preview.Pause не успява да отвори инспектора по време на a pac test run.
Заобиколно решение: Версията с отворен код на тестовия двигател може да се използва за функционалност за пауза.
Пример за преглед.пауза
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
Preview.PlaywrightScript(Text)
Изпълнение на C# скрипта на текущата страница
Бележка
Тази функция е имплементирана само за компилацията за отстраняване на грешки от версия с отворен код на 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 , той връща записите с помощта на функцията Table
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 и симулация на конектор с тестов двигател (предварителен преглед)