Напомена
Приступ овој страници захтева ауторизацију. Можете покушати да се пријавите или промените директоријуме.
Приступ овој страници захтева ауторизацију. Можете покушати да промените директоријуме.
У овом брзом почетку, креираћете тестове за апликације са подлогом под називом Кудос. Такође можете да истражите и откријете концепте тестирања и да их примените на писање тестова за сопствене апликације са подлогом. Узорак Кудос апликација је део пакета апликација за ангажовање запослених који су доступни за преузимање са Емплоyее Еxпериенце Стартер Кит.
Погледајте овај видео запис да бисте сазнали како да радите са услугом Test Studio:
Отворите Test Studio
Пријавите се у Power Apps.
Креирајте нову апликацију или уредите постојећу апликацију.
Сачувајте апликацију у Power Apps да бисте отворили Test Studio.
Белешка
Морате да сачувате апликацију пре него што можете да пишете тестове за апликацију.
Изаберите Напредни алати у левој навигацији.
Изаберите Отворени тестови да бисте отворили Тест Студио за ову апликацију. Ова радња отвара Test Studio у новој картици прегледача.
Белешка
Тестови се објављују и чувају у пакету апликација. Извоз и увоз апликације са подлогом у друго окружење такође ће укључивати све дефиниције теста, као што су пакети тестова и случајеви за тестирање које сте креирали.
Креирајте пакет тестова
У програму Test Studio за вас се подразумевано креира пакет тестова и случај за тестирање. Пакети тестова се користе за организовање случајева за тестирање. Апликација може да садржи један пакет тестова или више њих. Можете користити подразумевани пакет тестова или случај за тестирање да бисте одмах почели да пишете тестове или креирали нови пакет тестова.
Изаберите Нови пакет.
Ажурирајте име и опис тестног пакета тако што ћете изабрати поља на главној мрежи.
Креирање случаја за тестирање
У зависности од начина на који желите да организујете или групишете своје тестове, можете да креирате више случајева за тестирање у пакету тестова. Сваки случај може да тестира одређену функцију или подскуп функционалност у апликацији.
- Изаберите пакет тестова.
- Изаберите Нови случај у горњем менију да бисте креирали нови случај.
- Ажурирајте име и опис тестног случаја одабиром поља на главној мрежи.
Снимање случаја за тестирање
Случај за тестирање се састоји од корака тестирања који садрже радње. Радње тестирања се пишу користећи Power Apps изразе који обављају задатак. Можете да користите диктафон за аутоматско генерисање корака тестирања током интеракције са апликацијом. Након што забележите случај за тестирање, можете да га ажурирате, да додате нове кораке, избришете кораке и да напишете тврдње за тестирање како бисте потврдили резултат теста.
Белешка
У режиму снимања репродукује се само објављена апликација. Објавите све недавне промене у апликацији пре него што започнете снимање случаја за тестирање. Снимање без објављивања недавних промена доводи до тога да се последња објављена верзија апликације репродукује у режиму снимања.
Изаберите Запис из горњег менија. Ова радња отвара објављену апликацију са режимом снимања на новој картици прегледача.
Важно
Снимање на постојећем случају за тестирање надмашује све постојеће кораке тестирања.
Остварите интеракцију са својом апликацијом. Ваше акције су забележене у левом окну.
Када се интеракција заврши, изаберите Готово. Опционо, можете одабрати Откажи да се вратите у Тест Студио без снимања интеракција.
Погледајте кораке и изразе тестирања који су аутоматски генерисани за вас у програму Test Studio.
По потреби уредите текст описа корака у главној мрежи. Такође можете ажурирати радње корака тестирања одабиром формуле на главној мрежи.
Додавање корака тестирања и тврдњи тестирања
Сваки случај за тестирање треба да има очекивани резултат. У примеру Кудоса, један од очекиваних резултата слања похвале је креирање новог записа у бази података Microsoft Dataverse (Dataverse). Сада ћете ажурирати тест-случај и додати додатне кораке теста да бисте потврдили да је запис успешно креиран.
Следите ове кораке да бисте проверили успешно креирање записа:
- Покрените променљиву за број записа похвала у бази података на почетку случаја за тестирање.
- Покрените променљиву за број записа похвала у бази података на крају случаја за тестирање.
- Напишите израз тврдње тестирања да бисте га потврдили повећаним за једно бројање. Ако се број не повећа за један, тврдња тестирања не успе и тест-случај не успе.
Да бисте додали кораке тестирања и тврдње тестирања у апликацију Кудос:
Изаберите 1. корак или корак изнад ког желите да уметнете нови корак.
Изаберите Убаците корак изнад из горњег менија или одабиром опције из активног реда. Ова радња креира празан корак.
Белешка
Када изаберете Убаци корак изнад , нови празан корак се додаје изнад тренутног корака. Такође можете користити Ассерт , СетПропертy , Селецт или Траце акције уместо тога. Додаје се корак са одговарајућом формулом радње коју можете да измените.
Ажурирајте опис корака. На пример, „Броји Кудо у бази података“.
Унесите израз или формулу у улазни поступак да бисте бројали записе у бази података пре извршења теста.
Можете користити било који подржани израз. Такође можете да постављате упит за било који извор података, колекцију, променљиву или покрећете токове који се налазе у апликацији и да креирате нове глобалне променљиве или колекције које ћете користити у тестовима.
Set(kudosBeforeTest, CountRows(Filter(Kudos, Receiver.Email = "someone@example.com")))```
Изаберите 2. корак или корак изнад ког желите да уметнете нови корак.
Изаберите Убаците корак изнад из горњег менија или одабиром опције из активног реда. Ова радња креира празан корак.
Унесите израз или формулу у улазу акције у Траце и напишите вредност кудосБефореТест да бисте тестирали запис резултата.
Trace("kudosBeforeTest : " & kudosBeforeTest);
Идите на подножје случаја за тестирање и уметните нови корак да бисте бројали записе у бази података након што се тест заврши.
Set(kudosAfterTest, CountRows(Filter(Kudos, Receiver.Email = "someone@example.com")))```
Додајте последњи корак да бисте потврдили да је број записа у бази података повећан за број 1 и унесите следећу акцију тврдње да бисте проверили:
Assert(kudosAfterTest = kudosBeforeTest + 1, "Kudos count incorrect. Expected : " & kudosBeforeTest + 1 & " Actual :" & kudosAfterTest)
Сачувајте тест случај у менију горе десно у програму Test Studio.
Репродуковање теста
Можете да репродукујете снимљени тест да бисте потврдили функционалност апликације. Можете репродуковати све тестове у оквиру једног пакета тестова или у једном случају за тестирање.
Пре него што репродукујете снимак са последњим изменама, морате објавити апликацију:
Важно
Ако прескочите објављивање, репродукција снимка неће садржати недавне промене теста. Последњи објављени случај за тестирање или пакет тестова ће се репродуковати неусклађени са апликацијом.
Изаберите Објави да бисте аутоматски сачували и објавили тест.
Изаберите или пакет тестова или један случај за тестирање.
Изаберите Играј. Објављена апликација се отвара у режиму репродукције и можете видети своје тестне кораке који се аутоматски репродукују. Зелени знак потврде означава када се корак тестирања успешно извршава. Ако се корак не извршава, приказује се црвени индикатор грешке заједно са поруком о грешци.
Изаберите Готово да се вратите у Тест Студио.
Неуспешна тврдња
У овом одељку ћете променити тврдњу теста да бисте доживели неуспели тест:
Уредите корак тврдње одабиром поља са изразом.
Ажурирајте
+ 1
у+ 2
тестној акцији. Ово ажурирање значи да тест очекује да ће бити креирана два записа, што је нетачно. Ако је тест успешан, у бази података треба креирати само један запис.Assert(kudosAfterTest = kudosBeforeTest + 2, "Kudos count incorrect. Expected : " & kudosBeforeTest + 2 & " Actual :" & kudosAfterTest)
Изаберите Објави.
Изаберите Играј.
Погледајте тест који се репродукује. Завршни корак сада не успева и приказује грешку и поруку коју сте навели у кораку тврдње.
Репродуковање тестова у прегледачу
Можете да копирате везу за обављање теста у засебном прегледачу изван програма Test Studio. Помаже у интеграцији ваших тестова у континуирани цевовод за изградњу и ослобађање, као што су Azure DevOps.
Веза за репродукцију за изабрани тест је и даље задржана. Не мења се за комплет тестова или случај за тестирање. Можете да ажурирате своје тестове без потребе да мењате процесе изградње и издавања.
Да бисте репродуковали тестове у прегледачу:
У десном окну изаберите пакет тестова или случај за тестирање.
Изаберите Копирај везу за репродукцију.
Од вас ће се затражити да објавите своје тестове ако постоје необјављене промене.
Можете да прескочите поступак објављивања и да копирате везу за репродукцију. Нове промене теста се не покрећу ако прескочите поступак.
Отворите прегледач и налепите URL у траку адресе да бисте репродуковали тест.
Погледајте тест који се репродукује.
Подесите своје тестове
ОнТестЦасеСтарт својство Тест Суите може се користити за подешавање теста. Израз унесен у ово својство покреће се за сваки тест-случај у пакету пре него што случај почне да се извршава. ОнТестЦасеСтарт вам помаже да избегнете писање истих корака теста на почетку сваког случаја. Можете да прилагодите ово својство да покреће задатке постављања који су заједнички за све случајеве у пакету, као што су:
- Увек започните извршавање теста са првог екрана.
- Покретање заједничких колекција или променљивих.
- Прибављање података за тестирање из извора података за тест који се тренутно извршава
ТестЦасеИнфо запис садржи детаље за тренутни тест који се извршава. Он садржи следећа својства:
- ТестЦасеНаме – назив тестног случаја.
- ТестЦасеДесцриптион – опис тестног случаја.
- ТестЦасеИд – ИД тестног случаја.
- ТестСуитеНаме – име тест пакета којем случај припада.
- ТестСуитеДесцриптион – опис тестног пакета.
- ТестСуитеИд – ИД тестног пакета којем случај припада.
У доњем примеру, прилагодићете ОнТестЦасеСтарт својство тако да сваки тестни случај почиње од првог екрана у вашој апликацији. Такође ћете прибавити тест-податке из извора података на које се може позивати у корацима за тест-случај.
Изаберите Тест у левом окну или Погледај на заглављу пакета.
Изаберите акцију ОнТестЦасеСтарт.
Унесите израз за навигацију до првог екрана и прибавите податке за тестирање за свој тест.
//Start every cases on the first screen in the Kudos app Navigate('Dashboard Screen'); //Initialize my test data for the current case. Set(currentTestData, LookUp(KudosTestData, TestCase = TestCaseInfo.TestCaseName)); //Set kudosBeforeTest to 0 Set(kudosBeforeTest, 0)
Обрада резултата тестирања
Табла за тестирање, која је видљива током репродукције тестова у програму Test Studio, није видљива када користите прегледач. Због оваквог понашања, не можете одредити одређени корак тестирања који се извршава или ако тест успе или не успе.
Да бисте одредили резултате теста изван Тест Студио-а, постоје две особине под називом ОнТестЦасеЦомплете и ОнТестСуитеЦомплете доступне у тестном објекту који можете користити за обраду резултата ваших тестова. Када интегришете тестове у континуирани цевовод Azure DevOps за изградњу и издавање, ова својства се могу користити да бисте утврдили да ли треба да наставите са применом апликације.
Израз који је унет за ова својства се покреће када се заврши сваки случај или пакет. Можете прилагодити ова својства тако да обрађују и шаљу резултате тестова различитим изворима података или услугама као што су:
- SQL Server.
- Dataverse.
- Power Automate.
- Е-пошта користећи Office 365.
Ова подешавања се односе се на сваки пакет тестова или случај за тестирање у вашој апликацији. Након завршетка сваког тестног пакета или тестног случаја, резултати теста и све поруке у траговима садржане у тестовима доступни су у записима ТестЦасеРесулт и ТестСуитеРесулт .
Запис ТестЦасеРесулт садржи следеће особине:
- ТестЦасеНаме – назив тестног случаја.
- ТестЦасеДесцриптион – опис тестног случаја.
- ТестЦасеИд – ИД тестног случаја.
- ТестСуитеНаме – име тест пакета којем случај припада.
- ТестСуитеДесцриптион – опис тестног пакета.
- ТестСуитеИд – ИД тестног пакета којем случај припада.
- СтартТиме – време почетка извршења теста.
- ЕндТиме – крајње време извршења теста.
- Трагови – резултат било каквих тест тврдњи и било каквих порука из функције Траце.
- Успех – означава да ли је тестни случај успешно завршен.
- ТестФаилуреМессаге – ако случај није успео, порука о неуспеху.
Запис ТестСуитеРесулт садржи следеће особине:
- ТестСуитеНаме – име тестног пакета.
- ТестСуитеДесцриптион – опис тестног пакета.
- ТестСуитеИд – ИД тестног пакета.
- СтартТиме – време почетка извршења тест пакета.
- ЕндТиме – крајње време извршења тест пакета.
- ТестсПассед – број тестних случајева који су успешно завршени у пакету.
- ТестсФаилед - број тестних случајева који нису успели у пакету.
У овом брзом старту, креираћете две прилагођене табеле у бази Dataverse података за чување резултата теста прилагођавањем својстава ОнТестЦасеЦомплете и ОнТестСуитеЦомплете :
Изаберите Тест у левом окну или Погледај на заглављу пакета.
Изаберите акцију ОнТестЦасеЦомплете .
Унесите израз да бисте обрадили резултате теста. Следећи узорак чува резултате сваког теста предмета у прилагођеној табели AppTestResults у услузи Dataverse. Резултати испитивања се по жељи могу сачувати у SQL, SharePoint или било којој другој бази података. Можда ћете морати да поставите или повећате поље Trace у бази података према потреби.
Белешка
Следећи примери се повезују са услугом Microsoft Dataverse. Можете креирати једноставну апликацију или направити апликацију од нуле користећи Dataverse. Такође, погледајте референцу функције закрпе за више детаља за модификацију записа извора података који се користе у следећим узорцима.
//Save to Dataverse Patch(AppTestResults , Defaults(AppTestResults) , { TestPass: TestCaseResult.TestCaseName & ":" & Text(Now()) ,TestSuiteId: TestCaseResult.TestSuiteId ,TestSuiteName: TestCaseResult.TestSuiteName ,TestCaseId: TestCaseResult.TestCaseId ,TestCaseName: TestCaseResult.TestCaseName ,StartTime: TestCaseResult.StartTime ,EndTime: TestCaseResult.EndTime ,TestSuccess: TestCaseResult.Success ,TestTraces: JSON(TestCaseResult.Traces) ,TestFailureMessage: TestCaseResult.TestFailureMessage } );
Изаберите акцију ОнТестСуитеЦомплете .
Унесите израз да бисте обрадили резултате теста. У следећем примеру, сачуваћете резултате сваког теста пакета у прилагођеној табели AppTestSuiteResults у услузи Dataverse.
//Save to Dataverse Patch(AppTestSuiteResults , Defaults(AppTestSuiteResults) , { TestSuiteId: TestSuiteResult.TestSuiteId ,TestSuiteName: TestSuiteResult.TestSuiteName ,StartTime: TestSuiteResult.StartTime ,EndTime: TestSuiteResult.EndTime ,TestPassCount: TestSuiteResult.TestsPassed ,TestFailCount: TestSuiteResult.TestsFailed } );
Остали примери израза које можете користити у овим својствима су:
Пошаљите резултате у ток у Power Automate.
MyTestResultsFlow.Run(JSON(TestCaseResult))
Пошаљите резултате путем е-поште.
Office365.SendMailV2("someone@example.com", "Test case results", JSON(TestCaseResult, JSONFormat.IndentFour))
Примите обавештење апликације о резултату теста.
На пример, примите обавештење након завршетка теста током репродукције теста у прегледачу, изван програма Test Studio.
Notify(TestCaseResult.TestCaseName & " : " & If( TestCaseResult.Success , " Passed" , TestCaseResult.TestFailureMessage) ,If( TestCaseResult.Success , NotificationType.Success , NotificationType.Error) )
Функције тестирања
Поред функција доступних у Power Apps, следеће су уобичајене функције које ћете обично користити приликом ауторизације тестова: