Бележка
Достъпът до тази страница изисква удостоверяване. Можете да опитате да влезете или да промените директориите.
Достъпът до тази страница изисква удостоверяване. Можете да опитате да промените директориите.
Бележка
Функциите за предварителен преглед не са предназначени за производствена употреба и може да са с ограничена функционалност. Тези функции са достъпни преди официалното издание, за да могат клиентите да получат ранен достъп и да дадат обратна връзка.
Можете да използвате Learning Playground , за да се докоснете и да изпробвате функциите, документирани в това ръководство.
Какво е Power Fx?
Microsoft Power Fx е език за програмиране с общо предназначение с нисък код, базиран на формули, подобни на електронни таблици. Това е типизиран, декларативен, функционален език, с императивна логика и управление на състоянието, налични при необходимост. Историята му от Excel го прави достъпен за широк кръг потребители, от начинаещи до опитни разработчици.
Разширени Power Fx сценарии
Ако вече сте запознати Power Fx, потапянето в разширени сценарии може значително да подобри възможностите и ефективността на вашите приложения. Ето някои разширени сценарии и защо те могат да представляват интерес:
Създаване на персонализирани функции: Създаването на персонализирани функции позволява на разработчиците да капсулират сложна логика в компоненти за многократна употреба. Този подход не само опростява процеса на разработка, но също така осигурява последователност и намалява вероятността от грешки. Персонализираните функции могат да бъдат съобразени със специфичните бизнес нужди, което прави вашия тест по-мощен и гъвкав.
Интегриране с външни източници на данни: Интегрирането Power Fx с външни източници на данни позволява на вашите тестове да взаимодействат с широк спектър от данни, от бази данни до уеб услуги. Тази интеграция може да подобри функционалността на вашите приложения, като осигури достъп до данни и актуализации в реално време. Той също така позволява по-динамични и отзивчиви тестове, които могат да се адаптират към променящите се данни.
Оптимизиране на производителността за широкомащабни тестове: Тъй като вашите тестове нарастват по сложност и мащаб, оптимизирането на производителността става важно. Тези оптимизации могат да включват производителност, като ефективна обработка на данни и използване Power Fx на вградените функции за по-добра производителност. Тези оптимизации гарантират, че вашите тестове остават отзивчиви и ефективни, дори с големи набори от данни и сложна логика.
Модел на разширяемост
Моделът Power Fxна разширяемост на Test Engines е една от многото му завладяващи функции. Можете да разширите езика с персонализирани функции и действия, което го прави много адаптивен към различни сценарии. Ето някои ключови аспекти на модела на разширяемост:
Използвайте повторно уменията, които вече имате Power Fx: моделът за разширяемост ви позволява да използвате съществуващите си умения в Power Fx и други езици за програмиране, като C#. Използването на този подход означава, че можете да внесете знанията и опита си в базираните Power Fx тестове, което улеснява създаването на мощни и персонализирани решения.
Разрешаване на повторно използване на съществуващи библиотеки и функции: Моделът на разширяемост позволява интегрирането на съществуващи библиотеки и функции в Power Fx. Повторното използване позволява на разработчиците да използват повторно изпитан код и намаляват времето за разработка, за да увеличат надеждността. Чрез включването на съществуващи библиотеки можете да подобрите функционалността на вашите Power Fx приложения, без да преоткривате колелото.
Осигурете модел за капсулиране на сложността за потребителите на функциите: Едно от значителните предимства на модела на разширяемост е способността му да капсулира сложността. Създателите и разработчиците могат да създават персонализирани функции, които скриват сложните детайли на основната логика, осигурявайки прост и удобен за потребителя интерфейс за крайните потребители. Абстракцията улеснява използването и се възползва от разширената функционалност, без да е необходимо да разбирате сложността зад нея.
Подобрете сътрудничеството и последователността: Екипите могат да създадат последователен набор от персонализирани функции и действия, които могат да се споделят и използват повторно в различни проекти. Използването на общ
testSettings.yamlфайл може да насърчи сътрудничеството и гарантира, че се следват най-добрите практики, което води до по-стабилни и поддържани приложения.Улесняване на интеграцията с външни системи: Моделът на разширяемост позволява безпроблемна интеграция с външни системи и услуги. Това означава, че можете да свържете приложенията си Power Fx с широк спектър от източници на данни и API, подобрявайки техните възможности и осигурявайки достъп до данни в реално време.
Поддръжка за разширени сценарии: Моделът на разширяемост е проектиран да поддържа разширени сценарии, като например създаване на специфични за домейна езици и персонализирани работни потоци. Тази гъвкавост гарантира, че Power Fx може да бъде адаптирана, за да отговори на уникалните нужди на различни индустрии и случаи на употреба.
Като разработчик или усъвършенстван производител, който разбира и използва модела на разширяемост, разработчиците могат да създават по-мощни, гъвкави и удобни за потребителя приложения с Power Fx. Този модел не само подобрява възможностите на езика, но и го прави по-достъпен и ценен за по-широк кръг потребители.
Дефинирани от потребителя типове
Дефинираните от потребителя типове (UDT) в Power Apps тестовата машина ви позволяват да дефинирате персонализирани структури от данни, които могат да се използват във вашите тестови планове. Тази функция подобрява гъвкавостта и възможността за повторна употреба на вашите тестови случаи, като ви позволява да създавате сложни типове данни, съобразени с вашите специфични нужди от тестване.
Пример с UDT
Този пример показва как да дефинирате и използвате UDT във файл testSettings.yaml :
powerFxTestTypes:
- name: ControlName
value: |
{ControlName: Text}
- name: Options
value: |
[{Name: Text, Value: Number}]
Примерно обяснение на UDT
Разделът powerFxTestTypes дефинира два нови типа: ControlName и Options.
-
ControlNameе прост тип с едно свойствоControlNameна типаText. -
Optionsса по-сложен тип, представляващ списък от обекти, всеки сName(на типText) иValue(на типNumber).
Можете да използвате тези типове във вашите тестови случаи, за да дефинирате променливи и да проверите техните свойства. Например, можете да зададете променлива от тип Options и да потвърдите, че тя съдържа очакваното Name и Value двойките.
Дефинирани от потребителя функции
Дефинираните от потребителя функции (UDF) в Power Apps тестовата система ви позволяват да дефинирате персонализирани функции, които могат да се използват във вашите тестови планове. Тази функция подобрява гъвкавостта и възможността за повторна употреба на вашите тестови случаи, като ви позволява да създавате сложни функции, съобразени с вашите специфични нужди за тестване.
Ползи от СДС
- Повторна употреба: UDF ви позволяват да дефинирате сложни функции веднъж и да ги използвате повторно в множество тестови случаи. Това намалява излишъка и гарантира последователност във вашите тестови планове.
- Четливост: Използването на UDF прави вашите тестови планове по-четливи и по-лесни за поддръжка. Чрез дефиниране на персонализирани функции можете да капсулирате сложна логика и да направите тестовите си случаи по-разбираеми.
- Гъвкавост: UDF осигуряват гъвкавост за създаване на персонализирани функции, които отговарят на вашите специфични изисквания за тестване. Използвайте този подход, за да ви позволи да приспособите тестовите си случаи, за да отговарят по-добре на нуждите на вашето приложение.
- Поддръжка: С UDF могат да се правят промени във функциите на едно място, намалявайки усилията, необходими за актуализиране на множество тестови случаи. Това подобрява поддръжката на вашите тестови планове.
Пример с UDF
Този пример показва как да дефинирате и използвате UDF във файл testSettings.yaml :
testFunctions:
- description: Wait until control is visible using Document Object Model (DOM) selector
code: |
WaitUntilVisible(control: Text): Void =
Preview.PlaywrightAction(Concatenate("//div[@data-id='", control, "']"), "wait");
- description: Get the options for a control using Power Fx control from Model Driven App (MDA)
code: |
GetOptions(control: ControlName): Options =
Preview.GetOptions(control);
Примерно обяснение на UDF
Разделът testFunctions дефинира две нови функции:
-
WaitUntilVisibleвземаcontrolпараметър от типаTextи изчаква, докато зададената контрола стане видима с помощта на селектор на DOM. -
GetOptionsвземаcontrolпараметър от типаControlNameи връща опциите за посочената контрола, като използва Power Fx от приложение, управлявано от модел (MDA).
Използвайте тези функции във вашите тестови случаи, за да извършите конкретни действия или да извлечете данни. Например можете да използвате WaitUntilVisible , за да се уверите, че дадена контрола е видима, преди да взаимодействате с нея, и GetOptions да извлечете и проверите наличните опции за контрола.