Делите путем


Повер Аппс Тест Енгине ИАМЛ формат (преглед)

Белешка

Функције прегледа нису намењене за коришћење у производњи и могу да имају ограничене функционалности. Ове функције су доступне пре званичног објављивања како би клијенти могли раније да им приступе и пруже повратне информације.

Тестови су дефинисани у ИАМЛ-у пратећи исте смернице као и Повер Фк. Сазнајте више о граматици Повер Фк ИАМЛ формуле .

Погледајте фасциклу ПоверАппс-ТестЕнгине/самплес за детаљне примере.

Дефиниције ИАМЛ шеме

Својство Опис
Мапа сајта Дефинише један тест пакет, тестне случајеве у тестном пакету и конфигурацију специфичну за тест пакет
Претрага Дефинише поставке за тест пакет који се поново користе у више тестних случајева
енвиронментВариаблес Дефинише варијабле које би се потенцијално могле променити како се апликација преноси у различитим окружењима

Мапа сајта

Користи се за дефинисање једног теста.

Својство Тип Опис
persona string Обавезно. Корисник који је пријављен да изврши тест. Мора се подударати са особом наведеном у одељку Корисници .
testCases Претрага Обавезно. Дефинише тест случајеве у тест пакету. Тест случајеви садржани у тест суитовима се покрећу секвенцијално. Стање апликације се одржава у свим тестним случајевима у пакету.
testSuiteName string Обавезно. Назив тестног пакета.
appLogicalName string Опционално. Логично име апликације која ће бити покренута. Може се добити из раствора. За платно апликације, потребно је да га додате у решење да бисте га добили. Погледајте Како идентификовати своју апликацију у плану тестирања
appId GUID Опционално. ИД апликације која ће бити покренута. Потребно и користи се само када appLogicalName није присутан. ИД апликације треба да се користи само за апликације платна које нису у решењу. Погледајте Како идентификовати своју апликацију у плану тестирања
networkRequestMocks Српскохрватски / српскохрватски Опционално. Дефинише мрежне захтеве потребне за тест.
onTestCaseComplete string Опционално. Дефинише кораке које треба покренути за сваки тест случај у пакету након што случај заврши извршење.
onTestCaseStart string Опционално. Дефинише кораке које треба покренути за сваки тест случај у пакету пре него што случај почне да се извршава.
onTestSuiteComplete string Опционално. Дефинише кораке које треба покренути након што пакет заврши извршавање.
testSuiteDescription string Опционално. Додатне информације описују шта тест пакет ради.

Како идентификовати своју апликацију у плану тестирања

Потребно је да подесите или appLogicalName или appId да идентификујете своју апликацију. Који користите зависи од тога да ли је ваша апликација дефинисана у решењу.

Када дефинишете своје апликације у оквиру решења, ваши тестови остају преносиви у различитим окружењима. Подесите својство appLogicalName да укаже да је апликација заснована на решењу.

Да бисте пронашли логично име апликације:

  1. Отворите решење које садржи вашу апликацију у Повер Аппс
  2. Користите име (не Име за приказ) на листи. Вредност имена укључује префикс прилагођавања за издавача решења.

Самосталне апликације

Када ваша апликација није дефинисана у решењу, морате да користите appId својство.

Да бисте пронашли ИД апликације:

  1. Пронађите апликацију на листи Повер Аппс
  2. Отворите Детаљи и обратите пажњу на ИД ГУИД апликације

Српскохрватски / српскохрватски

Својство Тип Опис
requestURL string Обавезно. УРЛ захтева који добија лажни одговор. Глоб обрасци су прихваћени
responseDataFile string Обавезно. Текстуална датотека са лажним садржајем одговора. Сав текст у овом фајлу се чита као одговор
headers array Опционално. Списак поља заглавља у захтеву у формату [фиелдНаме: фиелдВалуе]
method string Опционално. Метод захтева (ГЕТ, ПОСТ, итд)
requestBodyFile string Опционално. Текстуална датотека са телом захтева. Сав текст у овом фајлу се чита као тело захтева

За опционе особине, ако вредност није специфицирана, рутирање се примењује на све. На пример, ако method је нула, ми шаљемо назад лажни одговор без обзира на метод све док се остале особине поклапају.

За Схарепоинт / Датаверсе / Цоннецтор апликације, requestURL и method може бити исти за све захтеве. x-ms-request-method и x-ms-request-url у заглављима може бити потребно да се конфигуришу у том случају да идентификују различите захтеве.

Претрага

Својство Тип Опис
testCaseName string Обавезно. Назив тестног случаја који се користи у извештавању о успеху и неуспеху
testSteps Претраживање Обавезно. Скуп Повер Фк функција које описују кораке потребне за извођење тестног случаја. Погледајте пример ТестСтепс
testCaseDescription No Опционално. Додатне информације описују шта тест случај ради

Претраживање

  • TestSteps могу користити било које постојеће функције Тест Енгине Повер Фк функције или специфичне тестне функције дефинисане овим оквиром.
  • Вредност треба да почне са симболом цеви ( |) да би се омогућило вишелинијске ИАМЛ изразе праћене знаком једнакости ( =) да би се означило да је то Повер Фx израз
  • Функције треба раздвојити тачка-зарез ( ;).
  • Коментари се могу користити и треба да почну са двоструком обрнутом косом цртом ( //).

Пример ТестСтепс

testCases:
   - testCaseName: Fill in a city name and do the search
   testSteps: |
      = Screenshot("connectorapp_loaded.png");
         SetProperty(TextInput1.Text, "Atlanta");
         Select(Button1);
         Assert(Label4.Text = "You are seeing the mock response", "Validate the output is from the mock");
         Screenshot("connectorapp_end.png");

Претрага

Користи се за дефинисање поставки за тестове у плану тестирања.

Својство Тип Опис
browserConfigurations Конфигурација претраживача [] Обавезно. Списак конфигурација претраживача које треба тестирати. Најмање један претраживач мора бити наведен.
extensionModules ЕкстензијаМодули Опционално. Садржи податке о екстензијама за омогућавање.
filePath string Опционално. Путања датотеке ка посебном yамл фајлу са свим подешавањима теста. Ако је обезбеђено, он ће надјачати сва подешавања теста у плану тестирања.
headless boolean Опционално. Подразумевано је true. Ако је подешено на фалсе, претраживач се појављује током извођења теста.
locale string Опционално. Синтакса локала/културе у којој су написани тестни случајеви или кораци теста. Ако није специфицирано, CultureInfo.CurrentCulture користи се за језик подразумевано за парсирање тест корака. Погледајте Разматрања региона и језика
recordVideo boolean Опционално. Подразумевано је нетачно. Ако је постављено на труе, снима се видео снимак теста.
timeout Целобројни Опционално. Тимеоут вредност у милисекундама. Подразумевано је 30.000 милисекунди (30s). Ако било која операција траје дуже од временског ограничења, завршава тест у неуспеху.
powerFxTestTypes name value Пар Опционално. Списак имена типа и дефиниција типа Повер Фк. Погледајте пример поверФкТестТyпес
testFunctions description code Пар Опционално. Списак описа и дефиниција функција Повер Фк. Погледајте пример тестФунцтионс

ЕкстензијаМодули

Садржи податке о екстензијама за омогућавање.

Својство Тип Опис
enable bool Без обзира да ли су модули проширења омогућени или не.
allowPowerFxNamespaces листа Листа именских простора ПоверФк за омогућавање.
parameters Парови кључних вредности Својства са вредностима за контролу модула проширења. У овом тренутку, само боолеов enableDataverseFunctions параметар важи за ово.

Овај пример показује како да омогућите именски простор ПоверФx Preview :

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

Сазнајте више о функцијама прегледа

Разматрања региона и језика

Тест Енгине подржава различите језичке и регионалне поставке као што су децимални и сепаратори листе. Имовина testSettings.locale контролише ова понашања. За више информација, погледајте Глобална подршка у Мицрософт Повер Фк .

Погледајте ове узорке конфигурација на PowerApps-TestEngine ГитХуб спремишту :

пример поверФкТестТyпес

powerFxTestTypes:
 - name: ControlName
   value: |
      {ControlName: Text} 
 - name: Options
   value: |
      [{Name: Text, Value: Number}]   

Овај пример показује како дефинисати прилагођене типове Повер Фк за употребу у тестним случајевима. Тип ControlName је дефинисан као запис са једним Text пољем, док Options је тип дефинисан као табела записа, од којих свака садржи Name поље типа Text и поље типа Value. Number Прилагођени типови се могу користити за креирање сложенијих и специфичнијих сценарија тестирања, повећавајући флексибилност и моћ ваших дефиниција тестова.

Пример тестФунцтионс

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);

Ови примери тестних функција показују како дефинисати прилагођене Повер Фк функције за употребу у вашим тест случајевима. Функција WaitUntilVisible користи ДОМ селектор да сачека док се не види одређена контрола, користећи акције драмског писача. Функција ГетОптионс преузима опције за одређену контролу из апликације Модел Дривен Апп (МДА), користећи контролу Повер Фк. Ове прилагођене функције повећавају флексибилност и моћ ваших дефиниција тестова, омогућавајући сложеније и специфичније сценарије тестирања.

Конфигурација претраживача

Сваки тестСеттингс захтева најмање један BrowserConfiguration.

Својство Тип Опис
browser string Обавезно. Претраживач који ће бити покренут приликом тестирања. Требало би да одговара претраживачима које подржава драмски писац .
device string Опционално. Уређај за емулацију приликом покретања претраживача. Требало би да одговара уређајима које подржава драмски писац
screenHeight Целобројни Опционално. Висина екрана који се користи приликом покретања претраживача. Ако је наведено, screenWidth мора се навести.
screenWidth Целобројни Опционално. Ширина екрана који се користи приликом покретања претраживача. Ако је наведено, screenHeight мора се навести.

енвиронментВариаблес

Можете да сачувате различите врсте вредности као вредности животне средине, али најчешћи случај је чување информација о акредитивима са листом корисника .

Корисници

Да би се осигурало да се акредитиви чувају на сигуран начин, дефиниција теста упућује на кориснике користећи . personaName Чување акредитива у датотекама тестног плана није подржано.

Пример:

environmentVariables:
    - users:
        - personaName: "User1"
          emailKey: "user1Email"
        - personaName: "User2"
          emailKey: "user2Email"

Тхе personaName се користи као део дефиниције теста да укаже на који корисник да покрене тест као.

Подржани механизми за складиштење акредитива

Да бисте сачували акредитиве као системске варијабле, можете их подесити на следећи начин:

# In PowerShell - replace variableName and variableValue with the correct values
$env:variableName = "variableValue"

У ИАМЛ-у, две особине морају бити дефинисане како би се указало на то да су акредитиви овог корисника сачувани у варијаблама окружења:

  • emailKey: Променљива окружења која се користи за чување корисникове е-поште.

Пример ИАМЛ:

    - personaName: "User1"
      emailKey: "user1Email"

Пример ПоверСхелл за постављање корисничких акредитива на основу ИАМЛ-а:

$env:user1Email = "someone@example.com"

Погледајте и

Преглед тестног мотора Повер Аппс (преглед)
Повер Аппс Тест Енгине Повер Фк функције (преглед)