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


Сынақ студиясымен жұмыс істеу

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

Test Studio бағдарламасымен қалай жұмыс істеу керектігін білу үшін мына бейнені қараңыз:

Test Studio құралын ашу

  1. Power Apps жүйесіне кіріңіз.

  2. Жаңа қолданба жасау немесе бар қолданбаны өңдеу.

  3. Test Studio құралын ашу үшін қолданбаңызды Power Apps ішіне сақтаңыз.

    Ескерім

    Қолданба үшін сынақ жазбас бұрын оны сақтау керек.

  4. Сол жақ навигация панелінде Қосымша құралдар тармағын таңдаңыз.

  5. Осы қолданба үшін Test Studio құралын ашу мақсатында Ашық сынақтар тармағын таңдаңыз. Бұл әрекет "Сынақ студиосы" мүмкіндігін жаңа браузер қойыншасында ашады.

    Test Studio құралын ашу.

Ескерім

Сынақтар қолданба бумасында жарияланады және сақталады. Кенеп қолданбалары бумасын басқа ортаға экспорттау және импорттау сонымен қатар сіз жасаған сынақ жиынтықтары мен сынақ жағдайлары сияқты барлық анықтамаларды қамтиды.

Сынақ жиынтығын жасау

Әдепкі бойынша сынақ жиынтығы мен сынақ жағдайы Test Studio-да сіз үшін жасалады. Сынақ жиынтықтары сынақ жағдайларын ұйымдастыру үшін қолданылады. Қолданбада бір немесе бірнеше сынақ жиынтығы болуы мүмкін. Сынақтарды дереу жазуды бастау үшін немесе жаңа сынақ жиынтығын жасау үшін әдепкі сынақ жиынтығын және жағдайын қолдануға болады.

  1. Жаңа жиынтық тармағын таңдаңыз.

  2. Негізгі тордағы жолдарды таңдау арқылы Сынақ жиынтығының атауы және сипаттамасы тармағын жаңартыңыз.

    Жаңа сынақ жиынтығы.

Сынақ жағдайын жасау

Сынақтарды қалай ұйымдастырғыңыз немесе топтағыңыз келетіндігіне байланысты сынақ жиынтығында бірнеше сынақ жағдайын жасауға болады. Әрбір жағдай қолданбаңыздағы белгілі бір мүмкіндікті немесе функциялардың жиынтығын тексере алады.

  1. Сынақ жиынтығын таңдаңыз.
  2. Жаңа жағдай жасау үшін жоғарғы мәзірден Жаңа жағдай тармағын таңдаңыз.
  3. Негізгі тордағы жолдарды таңдау арқылы Сынақ жағдайының атауы және сипаттамасы тармағын жаңартыңыз.

Жаңа сынақ жағдайы.

Сынақ жағдайын тіркеу

Сынақ жағдайы әрекеттерді қамтитын сынақ қадамдарынан тұрады. Сынақ әрекеттері тапсырманы орындайтын Power Apps өрнектерінің көмегімен жазылған. Қолданбамен жұмыс істегенде сынақ қадамдарын автоматты түрде жасау үшін жазу құралын пайдалануға болады. Жазғаннан кейін сынақ жағдайын жаңартуға, жаңа қадамдар қосуға немесе жоюға, сынақ нәтижесін растау үшін сынақтар растамаларын жазуға болады.

Ескерім

Жазу режимінде тек жарияланған қолданба ойнатылады. Сынақ жағдайын жазуды бастамас бұрын қолданбаға енгізілген кез келген соңғы өзгертулерді жариялаңыз. Соңғы өзгертулерді жарияламай жазу қолданбаның соңғы жарияланған нұсқасын жазба режимінде ойнауға мәжбүр етеді.

  1. Жоғарғы мәзірден Жазу тармағын таңдаңыз. Бұл әрекет жарияланған бағдарламаны жазу режимі арқылы жаңа браузер қойыншасында ашады.

    Маңызды

    Бар сынақ жағдайының үстіне жазу бұрыннан бар кез келген сынақ қадамдарын ауыстырады.

    Сынақтарды жазу.

  2. Қолданбамен жұмыс істеу. Сіздің әрекеттеріңіз сол жақ аймақта жазылған.

  3. Жұмыс істеп болған соң Дайын пәрменін таңдаңыз. Немесе жұмысыңыздың барысын жазбастан Test Studio құралына қайту үшін Болдырмау пәрменін таңдауға болады.

    Жазуды сақтау.

  4. Test Studio құралында сіз үшін автоматты түрде жасалған сынақ қадамдарын және өрнектерін қараңыз.

  5. Негізгі тордағы қадам сипаттамасы мәтінін қажетінше өңдеңіз. Сондай-ақ негізгі тордағы формуланы таңдау арқылы сынақ қадамының әрекеттерін жаңартуға болады.

    Сынақ жағдайын жаңарту.

Сынақ қадамдары мен сынақтар растамаларын қосу

Әр тест жағдайында күтілетін нәтиже болуы керек. Kudos мысалында мақтауды жіберуден күтілетін нәтижелерінің бірі Microsoft Dataverse ( Dataverse) дерекқорында жаңа жазбаның жасалуы болып табылады. Енді сынақ жағдайын жаңартып, сәтті жасалған жазбаны растау үшін қосымша сынақ қадамдарын қосасыз.

Жазбаның сәтті жасалуын тексеру үшін келесі қадамдарды орындаңыз:

  • Сынақ жағдайының басында дерекқорда мақтау жазбаларының санына арналған айнымалыны іске қосыңыз.
  • Сынақ жағдайының соңында дерекқорда мақтау жазбаларының санына арналған айнымалыны іске қосыңыз.
  • Бір санға артқанын тексеру үшін сынақта растау өрнегін жазыңыз. Егер сан бірге артпаса, сынақ растауы сәтсіз аяқталып, сынақ жағдайыңыз сәтсіз болады.

Kudos қолданбасында сынақ қадамдары мен сынақ растамаларын қосу үшін:

  1. 1-қадамды немесе жаңа қадамды енгізгіңіз келетін жоғарыдағы қадамды таңдаңыз.

  2. Жоғарғы мәзірден Жоғарыдағы қадамды енгізу тармағын таңдаңыз немесе белсенді қатардан опцияны таңдаңыз. Бұл әрекет бос қадамды жасайды.

    Қадам енгізу.

    Ескерім

    Жоғарыдағы қадамды енгізу тармағын таңдағанда ағымдағы қадамның үстіне жаңа бос қадам қосылады. Сондай-ақ орнына Растау, SetProperty, Таңдау немесе Қадағалау әрекеттерін таңдауға болады. Бұл өңдеуге болатын сәйкес әрекет формуласы бар қадамды қосады.

  3. Қадам сипаттамасын жаңартыңыз. Мысалы, «Мақтауды дерекқорда санау».

  4. Сынақты өткізбестен бұрын дерекқордағы жазбаларды санау үшін әрекет енгізуіне өрнек немесе формуланы қосыңыз.

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

    Set(kudosBeforeTest, CountRows(Filter(Kudos, Receiver.Email = "someone@example.com")))```
    
    
  5. Select Step 2 or the step above which you want to insert a new step.

  6. Select Insert a step above from the top menu or by selecting the option from the active row. This action creates an empty step.

  7. Enter an expression or formula in the action input to Trace and write the kudosBeforeTest value to test the results record.

    Trace("kudosBeforeTest : " & kudosBeforeTest);
    

    Сынаққа дейінгі Kudos.

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

    Set(kudosAfterTest, CountRows(Filter(Kudos, Receiver.Email = "someone@example.com")))```
    
    
  9. Add a final step to validate that the record count in the database has increased by a count of 1, and enter the following assertion action to verify:

    Assert(kudosAfterTest = kudosBeforeTest + 1, "Kudos count incorrect. Expected : " & kudosBeforeTest + 1  & " Actual :" & kudosAfterTest)
    

    Сынақтан кейінгі Kudos.

  10. Test Studio құралының жоғарғы оң жақ мәзірінен сынақ жағдайын сақтаңыз.

Сынақты ойнатыңыз

Қолданба жұмысын тексеру үшін жазылған сынақты ойнатуға болады. Бір сынақ жиынтығындағы немесе бір сынақ жағдайындағы барлық сынақтарды ойнатуға болады.

Соңғы өзгертулері бар жазбаны ойнатпас бұрын, қолданбаны жариялау керек:

Жарияламастан ойнату.

Маңызды

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

  1. Сынақты автоматты түрде сақтап, жариялау үшін Жариялау параметрін таңдаңыз.

    Өзгертулерді жариялау.

  2. Сынақ жиынтығын немесе бір сынақ жағдайын таңдаңыз.

  3. Ойнату пәрменін таңдаңыз. Жарияланған қолданба Ойнату режимінде ашылып, автоматты түрде ойнатылатын сынақ қадамдарыңызды көре аласыз. Жасыл құсбелгі сынақ қадамы сәтті аяқталғанын білдіреді. Егер қадам орындалмаса, қызыл қате көрсеткіші және қате туралы хабарлама көрсетіледі.

    Ойнату режимі.

  4. Test Studio құралына қайту үшін Дайын пәрменін таңдаңыз.

Сәтсіз растау

Бұл бөлімде сәтсіз сынақты тексеру үшін сынақ растамасыз өзгертуге болады:

  1. Өрнек ұясына құсбелгі қою арқылы растау қадамын өзгертіңіз.

  2. Сынақ әрекетінде + 1 мәнін + 2 мәніне өзгертіңіз. Бұл жаңарту сынақтың қате болатын, екі қатенің жасалуын күтеді дегенді білдіреді. Егер сынақ сәтті болса, дерекқорда тек бір жазба жасалуы керек.

    Assert(kudosAfterTest = kudosBeforeTest + 2, "Kudos count incorrect. Expected : " & kudosBeforeTest + 2  & " Actual :" & kudosAfterTest)
    

    Растау санын жаңарту.

  3. Жариялау пәрменін таңдаңыз.

  4. Ойнату пәрменін таңдаңыз.

  5. Сынақтың ойнатылуын қараңыз. Соңғы қадам қазір сәтсіз аяқталды және қате мен сіз растау сатысында көрсеткен хабарламаны көрсетеді.

    Ойнату қатесі.

Сынақтарды шолғышта ойнату

Сынақты сынақ студиосынан тыс бөлек браузерде ойнату үшін сілтемені көшіруге болады. Бұл сынақтарды Azure DevOps сияқты үздіксіз құрастырылым мен шығарылым үдерістер тізбегіне біріктіруге көмектеседі.

Таңдалған сынақтың ойнату сілтемесі сақталады. Ол сынақ жиынтығы немесе сынақ жағдайы үшін өзгермейді. Сынақтарыңызды құру және шығару процестерін өзгертусіз жаңарта аласыз.

Шолғышта сынақтарды ойнату үшін:

  1. Оң жақ тақтадан сынақ жиынтығы мен сынақ жағдайын таңдаңыз.

  2. Ойнату сілтемесін көшіру тармағын таңдаңыз.

    Ойнату сілтемесін көшіру.

  3. Егер жарияланбаған өзгерістер болса, сынақтарыңызды жариялау сұралады.

    Сілтемені көшірмес бұрын жариялау.

  4. Жариялау процесін өткізіп жіберуді және ойнату сілтемесін көшіруді таңдауға болады. Егер өткізіп жіберсеңіз, жаңа сынақ өзгерістері ойнатылмайды.

    Ойнату сілтемесі көшірілді.

  5. Сынақты ойнату үшін шолғышты ашып, мекенжай жолына URL мекенжайын қойыңыз.

  6. Сынақтың ойнатылуын қараңыз.

Сынақтарды орнату

Сынақ студиосының OnTestCaseStart сипатын сынақты орнату үшін пайдалануға болады. Бұл сипатқа енгізілген өрнек іс орындала бастағанға дейін жиынтықтағы әр сынақ жағдайы үшін қосылады. OnTestCaseStart сипаты әр істің басында бірдей сынақ қадамдарын жазуды болдырмауға көмектеседі. Осы сипатты жиынтықтағы барлық істерге ортақ орнату тапсырмаларын іске қосу үшін реттеуге болады, мысалы:

  • Әрқашан сынақты орындауды бірінші экраннан бастау.
  • Жалпы жинақтарды немесе айнымалы мәндерді баптандыру.
  • Ағымдағы орындалатын сынақ үшін сынақ деректерін деректер көзінен алу

TestCaseInfo жазбасында ағымдағы орындалып жатқан сынаққа арналған мәліметтер бар. Ол келесі сипаттарды қамтиды:

  • TestCaseName - сынақ жағдайының атауы.
  • TestCaseDescription – сынақ жағдайының сипаттамасы.
  • TestCaseId – сынақ жағдайының идентификаторы.
  • TestSuiteName – жағдай кіретін сынақ жиынтығының атауы.
  • TestSuiteDescription – сынақ жиынтығының сипаттамасы.
  • TestSuiteId – жағдай кіретін сынақ жиынтығының идентификаторы.

Төмендегі мысалда, OnTestCaseStart сипатын реттейсіз, осылайша әр сынақ жағдайы бағдарламадағы бірінші экраннан басталады. Сондай-ақ сынақ деректерін сынақ жағдайына арналған қадамдарға сілтеме жасауға болатын деректер көзінен аласыз.

  1. Сол жақ аумақта Сынақ немесе жиынтық тақырыбындағы Көру тармағын таңдаңыз.

    Орнатылған сипатты сынау немесе көру.

  2. OnTestCaseStart әрекетін таңдаңыз.

  3. Өрнекті бірінші экранға өту үшін енгізіп, сынаққа арналған сынақ деректерін алыңыз.

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

    OnTestCaseStart мысалы.

Сынақ нәтижелерін өңдеу

Сынақтарды сынақ студиосында ойнату кезінде көрінетін сынақ тақтасы браузерді пайдалану кезінде көрінбейді. Осы әрекетке байланысты немесе сынақ өтсе немесе сәтсіз аяқталса, орындалатын нақты сынақ қадамын анықтау мүмкін болмайды.

Test Studio бағдарламасынан тыс сынақ нәтижелерін анықтау үшін OnTestCaseComplete және OnTestSuiteComplete деп аталатын екі сипат сынақ нәтижелерін өңдеу үшін пайдалануға болатын сынақ объектісінде қол жетімді. Сынақтарды Azure DevOps сияқты үздіксіз құру және шығару желісіне енгізу кезінде бұл сипаттарды қолданбаны орналастыруды жалғастыру керектігін анықтау үшін пайдалануға болады.

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

  • SQL Server.
  • Dataverse.
  • Power Automate.
  • Office 365 арқылы электрондық хабарды жіберу.

Бұл параметрлер қолданбаңыздағы кез келген сынақ жиынтығына немесе сынақ жағдайына қолданылады. Әр сынақ жиынтығы немесе сынақ жағдайы аяқталғаннан кейін сынақ нәтижелері және сынақтардағы кез келген бақылау хабарлары TestCaseResult және TestSuiteResult жазбаларында қолжетімді болады.

TestCaseResult жазбасында мынадай сипаттар бар:

  • TestCaseName - сынақ жағдайының атауы.
  • TestCaseDescription – сынақ жағдайының сипаттамасы.
  • TestCaseId – сынақ жағдайының идентификаторы.
  • TestSuiteName – жағдай кіретін сынақ жиынтығының атауы.
  • TestSuiteDescription – сынақ жиынтығының сипаттамасы.
  • TestSuiteId – жағдай кіретін сынақ жиынтығының идентификаторы.
  • StartTime – сынақтың орындалуының басталу уақыты.
  • EndTime – сынақтың орындалуының аяқталу уақыты.
  • Бақылаулар – кез келген сынақ растамаларының нәтижесі және Бақылау функциясының кез келген хабарлары.
  • Жетістік - сынақтың сәтті аяқталғанын көрсетеді.
  • TestFailureMessage - егер жағдай сәтсіз болса, сәтсіздік туралы хабарлама.

TestSuiteResult жазбасында мынадай сипаттар бар:

  • TestSuiteName - сынақ жиынтығының атауы.
  • TestSuiteDescription – сынақ жиынтығының сипаттамасы.
  • TestSuiteId - сынақ жиынтығының идентификаторы.
  • StartTime – сынақ жиынтығының орындалуының басталу уақыты.
  • EndTime – сынақ жиынтығының орындалуының аяқталу уақыты.
  • TestsPassed – жиынтықтағы сәтті аяқталған сынақ жағдайларының саны.
  • TestsFailed - жиынтықтағы сәтсіз аяқталған сынақ жағдайларының саны.

Бұл жылдам бастауда сіз OnTestCaseComplete және OnTestSuiteComplete сипаттарын теңшеу арқылы сынақ нәтижелерін сақтау үшін Dataverse дерекқорында екі реттелетін кесте жасайсыз.

  1. Сол жақ аумақта Сынақ немесе жиынтық тақырыбындағы Көру тармағын таңдаңыз.

    Орнатылған сипатты сынау немесе көру.

  2. OnTestCaseComplete әрекетін таңдаңыз.

  3. Сынақ нәтижелерін өңдеу үшін өрнек енгізіңіз. Келесі үлгі әрбір сынақ жағдайының нәтижелерін Dataverse жүйесіндегі реттелетін AppTestResults кестесіне сақтайды. Сынақ нәтижелерін SQL, SharePoint немесе кез келген басқа дерек көзіне сақтауға болады. Қажет болса деректер көзінде Бақылау жолын орнату немесе арттыру керек болуы мүмкін.

    Ескерім

    Келесі үлгілер 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
    }
    );
    

    OnTestCaseComplete мысалы.

  4. OnTestSuiteComplete әрекетін таңдаңыз.

  5. Сынақ нәтижелерін өңдеу үшін өрнек енгізіңіз. Келесі үлгіде сіз әрбір сынақ жинағының нәтижелерін Dataverse жүйесіндегі реттелетін AppTestSuiteResults кестесіне сақтайды.

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

    OnTestSuiteComplete мысалы.

Осы сипаттарда пайдалануға болатын өрнектердің басқа мысалдары:

  • Нәтижелерді 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 бағдарламасында қолжетімді функцияларға қосымша, келесілер сынақты әзірлеу кезінде әдетте пайдаланатын жалпы функциялар болып табылады.

Келесі қадамдар

Ескерім

Сіз құжат тіліңіздің артықшылықтары туралы айта аласыз ба? Қысқа сауалнамаға қатысыңыз. (бұл сауалнама ағылшын тілінде екеніне назар аударыңыз)

Сауалнама шамамен жеті минут уақытыңызды алады. Жеке деректер жиналмайды (құпиялылық туралы мәлімдеме).