Бөлісу құралы:


Power Apps Test Engine YAML пішімі (алдын ала қарау)

Ескертпе

Алдын ала қарау мүмкіндіктері өндірісті пайдалану үшін арналмаған және функционалдық шектеулі болуы мүмкін. Бұл мүмкіндіктер ресми жарияланудан бұрын қолжетімді, сондықтан тұтынушылар ерте қатынаса алады және кері байланыс бере алады.

Тесттер YAML-де Power Fx сияқты нұсқауларға сәйкес анықталады. Power Fx YAML формуласының грамматикасы туралы қосымша ақпарат алыңыз.

Егжей-тегжейлі мысалдар үшін PowerApps-TestEngine/үлгілер қалтасын қараңыз.

YAML схемасының анықтамалары

Сипат Сипаттама
РааРБір сынақ жиынтығын, сынақ жиынтығындағы сынақ жағдайларын және сынақ жиынтығына тән конфигурацияны анықтайды
Раа Бірнеше сынақ жағдайларында қайта пайдаланылатын сынақ жиынтығына арналған параметрлерді анықтайды
ортаАйнымалылар Бағдарлама әр түрлі орталарға тасымалдалған кезде өзгеруі мүмкін айнымалыларды анықтайды

РааÐ

Бір сынақтан сүрінбей өту үшін қолданылады.

Сипат Түр Сипаттама
persona жол Талап етіледі. Сынақтан өту үшін кірген пайдаланушы. Пайдаланушылар бөлімінде тізімделген тұлғаға сәйкес келуі керек.
testCases Тест жағдайлары Талап етіледі. Сынақ жиынтығындағы сынақ жағдайларын анықтаңыз. Сынақ жиынтықтарында қамтылған сынақ жағдайлары дәйекті түрде жүргізіледі. Бағдарлама күйі барлық сынақ жағдайларында жиынтықта сақталады.
testSuiteName жол Талап етіледі. Сынақ жиынтығының атауы.
appLogicalName жол Қосымша. Іске қосылатын қолданбаның логикалық атауы. шешімін табу арқылы алуға болады. Кенеп қолданбалары үшін сіз оны шешу үшін оны шешуге қосуыңыз керек. Тестілеу жоспарында қолданбаны қалай анықтауға болатындығын қараңыз
appId Guid Қосымша. Іске қосылатын қолданбаның идентификаторы. Қажет және жоқ кезде appLogicalName ғана қолданылады. Қолданба идентификаторы тек шешімде жоқ кенеп қолданбалары үшін пайдаланылуы керек. Тестілеу жоспарында қолданбаны қалай анықтауға болатындығын қараңыз
networkRequestMocks NetworkRequestMocks Қосымша. Тест үшін қажетті желілік сұрау макеттерін анықтайды.
onTestCaseComplete жол Қосымша. Іс аяқталғаннан кейін жиынтықтағы әрбір сынақ жағдайы үшін іске қосу керек қадамдарды анықтайды.
onTestCaseStart жол Қосымша. Іс орындалмас бұрын жиынтықтағы әрбір сынақ жағдайы үшін іске қосу керек қадамдарды анықтаңыз.
onTestSuiteComplete жол Қосымша. Бағдарлама аяқталғаннан кейін орындалуы тиіс қадамдарды анықтаңыз.
testSuiteDescription жол Қосымша. Қосымша мәліметтер ҰБТ-ның не істейтінін сипаттайды.

Тестілеу жоспарында өтінішіңізді қалай анықтауға болады

Сізге орнату appLogicalName немесе appId сіздің өтінішіңізді анықтау қажет. Сіздің қолданбаңыздың шешімде анықталғанына байланысты.

Бағдарламаларды шешімдер ішінде анықтаған кезде, тесттер орталарда портативті болып қалады. Қолданбаның шешімге негізделгенін көрсету үшін қасиетті орнатыңыз appLogicalName .

Бағдарламаның логикалық атауын табу үшін:

  1. Power Apps бағдарламасында бағдарламаны қамтитын шешімді ашыңыз
  2. Тізімдегі Аты-жөнін ( Көрсетілетін атау емес) пайдаланыңыз. Атау мәні шешім жариялаушысына арналған теңшеу префиксін қамтиды.

Дербес бағдарламалар

Егер бағдарлама шешімде анықталмаған болса, сипатты пайдалануыңыз appId керек.

Қолданбаның идентификаторын табу үшін:

  1. Power Apps тізімінен бағдарламаны табу
  2. Мәліметтерді ашып, бағдарлама идентификаторының GUID нұсқасын ескеріңіз

NetworkRequestMocks

Сипат Түр Сипаттама
requestURL жол Талап етіледі. Жалған жауап алатын сұрау URL мекенжайы. Глоб үлгілері қабылданды
responseDataFile жол Талап етіледі. Жалған жауап мазмұны бар мәтіндік файл. Осы файлдағы барлық мәтін жауап ретінде оқылады
headers жиым Қосымша. [fieldName: fieldValue] пішіміндегі сұраудағы үстіңгі деректеме өрістерінің тізімі
method жол Қосымша. Сұрау әдісі (GET, POST және т.б.)
requestBodyFile жол Қосымша. Сұрау сұрау мәтіні бар мәтіндік файл. Осы файлдағы барлық мәтін сұрау мәтіні ретінде оқылады

Қосымша сипаттар үшін, егер мән көрсетілмесе, маршруттау барлығына қолданылады. Мысалы, егер method нөл болса, біз басқа қасиеттердің барлығы сәйкес келгенше әдіс қандай болса да, жалған жауапты қайтарамыз.

SharePoint / Dataverse / Connector бағдарламалары requestURL үшін және method барлық сұраулар үшін бірдей болуы мүмкін. x-ms-request-method x-ms-request-url Бұл жағдайда әр түрлі сұраныстарды анықтау үшін тақырыптарды конфигурациялау қажет болуы мүмкін.

Тест жағдайлары

Сипат Түр Сипаттама
testCaseName жол Талап етіледі. Сәттілік пен сәтсіздік туралы есеп беру кезінде қолданылатын сынақ жағдайының атауы
testSteps Тестілеу қадамдары Талап етіледі. Сынақ жағдайын орындау үшін қажетті қадамдарды сипаттайтын Power Fx функцияларының жиынтығы. TestSteps үлгісін қараңыз
testCaseDescription Жоқ Қосымша. Қосымша ақпарат - Тест тапсырмасы бойынша не істеу керек

Тестілеу қадамдары

  • TestSteps Кез келген қолданыстағы Test Engine Power Fx функцияларын , функцияларын немесе осы құрылыммен анықталған арнайы сынақ функцияларын пайдалана алады.
  • Мән құбыр символынан (|) басталуы керек, бұл Power Fx өрнегі екенін көрсету үшін көп= жолды YAML өрнектеріне мүмкіндік береді
  • Тапсырмалар нүктелі үтірмен (;үтірмен) бөлінуі керек.
  • Түсініктемелерді қолдануға болады және қос кері қиғаш қиғаш таңбаларынан басталуы керек (//).

TestSteps мысалы

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 extensionModules Қосымша. Кеңейту үшін қосымшалар туралы мәліметтерді қамтиды.
filePath жол Қосымша. Барлық сынақ параметрлері бар бөлек yaml файлына файл жолы. Егер ол ұсынылған болса, ол сынақ жоспарындағы барлық сынақ параметрлерін жоюға мүмкіндік береді.
headless boolean Қосымша. Әдепкісі — шын. Егер жалған мәні орнатылса, браузер сынақ орындалу кезінде көрсетіледі.
locale жол Қосымша. Тест жағдайлары немесе сынақ қадамдары жазылған жергілікті / мәдениет синтаксисі. Егер көрсетілмесе, CultureInfo.CurrentCulture тест қадамдарды талдау үшін әдепкі бойынша жергілікті жер үшін қолданылады. Аймақ пен тілді қарастыру бөлімін қараңыз
recordVideo boolean Қосымша. Әдепкі жалған болып табылады. Егер шындық мәні орнатылған болса, сынақтың бейне жазбасы түсіріледі.
timeout Ð Ð°Ñ T Қосымша. Уақыт аяқталу мәні миллисекундтарда. Әдепкі - 30 000 миллисекунд (30 секунд). Егер кез-келген операция уақыт шегінен ұзағырақ болса, ол сынақтан сәтсіздікке ұшырайды.
powerFxTestTypes name value Ð Ð� Қосымша. Түр атауы мен Power Fx түрі анықтамаларының тізімі. powerFxTestTypes үлгісін қараңыз
testFunctions description code Ð Ð� Қосымша. Power Fx функциясының сипаттамалары мен сипаттамаларының тізімі. testFunctions үлгісін қараңыз

extensionModules

Кеңейту үшін қосымшалар туралы мәліметтерді қамтиды.

Сипат Түр Сипаттама
enable логикалық Кеңейтілген модульдерге рұқсат етілген бе, жоқ па.
allowPowerFxNamespaces тізім Қосу үшін PowerFx атау кеңістіктерінің тізімі.
parameters Кілт мәндерінің жұптары Кеңейту модульдерін басқаратын мәндері бар сипаттар. Қазіргі уақытта бұл үшін тек Boolean enableDataverseFunctions параметрі жарамды.

Бұл мысалда PowerFx Preview атау кеңістігін қалай қосуға болатындығы көрсетілген:

testSettings:
  extensionModules:
    enable: true
    allowPowerFxNamespaces:
    - Preview

Алдын ала қарау функциялары туралы қосымша ақпарат алу

Аймақ пен тіл мәселелері

Test Engine ондық және тізім бөлгіштері сияқты әртүрлі тілдік және аймақтық параметрлерді қолдайды. Меншік testSettings.locale иелері бұл әрекеттерді бақылайды. Қосымша ақпарат алу үшін Microsoft Power Fx бағдарламасындағы Жаһандық қолдау бөлімін қараңыз.

PowerApps-TestEngine GitHub репозиторийіндегі мына үлгі конфигурацияларын қараңыз:

powerFxTestTypes мысалы

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

Бұл мысалда сынақ жағдайларында пайдалану үшін реттелетін Power Fx түрлерін анықтау әдісі көрсетілген. Түрі бір ControlName өрісі бар жазба ретінде анықталады, ал Text түрі жазбалар кестесі ретінде анықталады, олардың әрқайсысы түрі Options өрісі мен Name түрі Textөрісін Value қамтиды.Number Реттелетін түрлерді неғұрлым күрделі және нақты сынақ сценарийлерін жасау үшін пайдалануға болады, бұл сіздің тест анықтамаларының икемділігі мен күшін арттырады.

testFunctions мысалы

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

Бұл сынақ функциясының мысалдары сынақ жағдайларында пайдалану үшін реттелетін Power Fx функцияларын қалай анықтауға болатындығын көрсетеді. WaitUntilVisible Функция Playwright әрекеттерін пайдаланып, көрсетілген басқару элементі көрінгенше күту үшін DOM таңдауын пайдаланады. GetOptions функциясы Power Fx басқару элементін пайдалана отырып , үлгіге негізделген бағдарламадан (MDA) көрсетілген басқару элементінің параметрлерін алады. Бұл реттелетін функциялар тест анықтамаларының икемділігі мен күшін арттырады, бұл неғұрлым күрделі және нақты сынақ сценарийлерін жасауға мүмкіндік береді.

Шолғышты баптау

Әрбір тест параметрлері кем дегенде біреуін BrowserConfigurationқажет етеді .

Сипат Түр Сипаттама
browser жол Талап етіледі. Тексеру кезінде іске қосылатын браузер. Playwright қолдайтын браузерлерге сәйкес келуі керек.
device жол Қосымша. Браузерді іске қосқан кезде еліктеуге болатын құрылғы. Playwright қолдайтын құрылғыларға сәйкес келуі керек
screenHeight Ð Ð°Ñ T Қосымша. Браузерді іске қосқан кезде пайдаланылатын экранның биіктігі. Егер көрсетілген болса, screenWidth онда оны да көрсету керек.
screenWidth Ð Ð°Ñ T Қосымша. Браузерді іске қосқан кезде пайдаланылатын экранның ені. Егер көрсетілген болса, 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"

YAML-де осы пайдаланушының тіркелгі деректері қоршаған орта айнымалыларында сақталғанын көрсету үшін екі қасиетті анықтау керек:

  • emailKey: Пайдаланушының электрондық поштасын сақтау үшін қолданылатын қоршаған орта айнымалысы.

YAML мысалы:

    - personaName: "User1"
      emailKey: "user1Email"

YAML негізінде пайдаланушы тіркелгі деректерін орнату үшін PowerShell мысалы:

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

Келесіні де қараңыз:

Power Apps Test Engine-ге шолу (алдын ала қарау)
Power Apps Сынақ механизмінің Power Fx функциялары (алдын ала қарау)