Práca so softvérom Test Studio

V tejto rýchlej konfigurácii vytvoríte testy pre aplikáciu plátna s názvom Kudos. Môžete tiež preskúmať a objaviť koncepty testovania a použiť ich na písanie testov pre svoje vlastné aplikácie plátna. Ukážková aplikácia Kudos je súčasťou balíka aplikácií na zapojenie zamestnancov, ktorý je k dispozícii na stiahnutie z úvodnej súpravy Employee Experience Starter Kit.

Pozrite si toto video a zistite, ako pracovať s Test Studio:

Otvorenie Test Studia

  1. Prihláste sa do služby Power Apps.

  2. Vytvorte novú aplikáciu alebo upravte existujúcu aplikáciu.

  3. Uložte aplikáciu do služby Power Apps, aby bolo možné otvoriť Test Studio.

    Poznámka

    Písať testy pre aplikáciu je možné až po uložení aplikácie.

  4. Na ľavom navigačnom paneli vyberte položku Rozšírené nástroje.

  5. Výberom položky Otvoriť testy otvorte Test Studio pre túto aplikáciu. Otvorí sa Test Studio na novej karte prehliadača.

    Otvorenie Test Studia.

Poznámka

Testy sa zverejňujú a ukladajú do balíka aplikácií. Export a import balíka aplikácie plátna do iného prostredia bude zahŕňať aj všetky definície testov, ako sú testovacie súpravy a testovacie prípady, ktoré ste vytvorili.

Vytvorenie testovacieho balíka

V Test Studio sa predvolene vytvorí testovací balík a testovací prípad. Testovacie balíky slúžia na usporiadanie testovacích prípadov. Aplikácia môže obsahovať jeden alebo viac testovacích balíkov. Môžete začať okamžite písať testy s použitím predvoleného testovacieho balíka a prípadu alebo môžete vytvoriť nový testovací balík.

  1. Vyberte položku Nový balík.

  2. Vyberte polia na hlavnej mriežke a aktualizujte Názov a popis testovacieho balíka.

    Nový testovací balík.

Vytvorenie testovacieho prípadu

V závislosti od požadovaného spôsobu usporiadania alebo zoskupenia testov môžete v testovacom balíku vytvoriť viaceré testovacie prípady. Každý prípad môže testovať konkrétnu funkciu alebo podmnožinu funkcií v aplikácii.

  1. Vyberte testovací balík.
  2. Výberom položky Nový prípad v hornej ponuke vytvorte nový prípad.
  3. Vyberte polia na hlavnej mriežke a aktualizujte názov a popis testovacieho prípadu.

Nový testovací prípad.

Zaznamenanie testovacieho prípadu

Testovací prípad pozostáva z testovacích krokov, ktoré obsahujú akcie. Akcie testu sa píšu pomocou výrazov služby Power Apps, ktoré vykonávajú úlohu. Pomocou záznamníka môžete automaticky vygenerovať testovacie kroky pri práci s aplikáciou. Po zaznamenaní môžete aktualizovať testovací prípad, pridať nové kroky, odstrániť kroky a napísať kontrolné výrazy testu na overenie výsledku testu.

Poznámka

V režime záznamu sa prehráva iba publikovaná aplikácia. Pred začatím nahrávania testovacieho prípadu publikujte všetky najnovšie zmeny v aplikácii. Nahrávanie bez publikovania najnovších zmien spôsobí, že v režime záznamu sa prehrá posledná publikovaná verzia aplikácie.

  1. V hornej ponuke vyberte položku Záznam. Na novej karte prehliadača sa otvorí publikovaná aplikácia s režimom záznamu.

    Dôležité

    Zaznamenávanie na existujúci testovací prípad prepíše všetky už existujúce testovacie kroky.

    Zaznamenanie testov.

  2. Pracujte s aplikáciou. Vaše akcie sa zaznamenajú na ľavej table.

  3. Po dokončení interakcie vyberte položku Hotovo. Prípadne sa môžete výberom položky Zrušiť vrátiť do Test Studia bez zaznamenania vašich interakcií.

    Uloženie záznamu.

  4. Pozrite si testovacie kroky a výrazy, ktoré sa automaticky vygenerovali v Test Studio.

  5. V prípade potreby upravte text popisov krokov v hlavnej mriežke. Môžete tiež vybrať vzorec na hlavnej mriežke a upraviť akcie testovacích krokov.

    Aktualizácia testovacieho prípadu.

Pridanie testovacích krokov a kontrolných výrazov testu

Každý testovací prípad by mal mať očakávaný výsledok. V príklade s aplikáciou Kudos je jedným z očakávaných výsledkov odoslania Kudo vytvorenie nového záznamu v databáze Microsoft Dataverse (Dataverse). Teraz aktualizujete testovací prípad a pridáte ďalšie testovacie kroky na overenie úspešného vytvorenia záznamu.

Na overenie úspešného vytvorenia záznamu potrebujete nasledujúce kroky:

  • Inicializácia premennej pre počet záznamov Kudo v databáze na začiatku testovacieho prípadu.
  • Inicializácia premennej pre počet záznamov Kudo v databáze na konci testovacieho prípadu.
  • Zapísanie výrazu kontrolného výrazu testu na overenie, či sa počet zvýšil o jeden. Ak sa počet nezvýši o jeden, kontrolný výraz zlyhá a testovací prípad zlyhá.

Pridanie testovacích krokov a kontrolných výrazov testu v aplikácii Kudos:

  1. Vyberte krok 1 alebo krok, nad ktorý chcete vložiť nový krok.

  2. V hornej ponuke alebo v aktívnom riadku vyberte položku Vložiť krok nad. Vytvorí sa prázdny krok.

    Vloženie kroku.

    Poznámka

    Pri výbere možnosti Vložiť krok nad sa pridá nový prázdny krok nad aktuálny krok. Namiesto toho môžete použiť aj akcie Assert, SetProperty, Vybrať alebo Sledovať. Tým sa pridá krok s príslušným vzorcom akcie, ktorý môžete upraviť.

  3. Aktualizujte popis kroku. Napríklad: „Sčítanie záznamov Kudo v databáze“.

  4. Do vstupu akcie zadajte výraz alebo vzorec na sčítanie záznamov v databáze pred vykonaním testu.

    Môžete použiť ľubovoľný podporovaný výraz. Môžete tiež dotazovať ľubovoľné zdroje údajov, kolekcie, premenné alebo postupy spustenia, ktoré sú obsiahnuté vo vašej aplikácii, ako aj vytvoriť nové globálne premenné alebo kolekcie, ktoré sa majú použiť v testoch.

    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 pred testom.

  8. Prejdite do dolnej časti testovacieho prípadu a vložte nový krok na sčítanie záznamov v databáze po dokončení testu.

    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)
    

    Akcia Assert, Kudos po teste.

  10. Uložte testovací prípad v pravej hornej ponuke v Test Studio.

Prehratie testu

Prehratím zaznamenaného testu môžete overiť funkčnosť aplikácie. Môžete prehrať všetky testy v rámci jedného testovacieho balíka alebo jedného testovacieho prípadu.

Pred prehratím záznamu s najnovšími zmenami je nutné publikovať aplikáciu:

Prehratie bez publikovania.

Dôležité

Ak zverejňovanie vynecháte, prehratie záznamu nebude obsahovať najnovšie zmeny testu. Pre aplikáciu sa prehrá posledný publikovaný testovací prípad alebo balík.

  1. Stlačte možnosť Publikovať na automatické uloženie a zverejnenie testu.

    Zverejnenie zmien.

  2. Vyberte testovací balík alebo jeden testovací prípad.

  3. Vyberte položku Prehrať. Publikovaná aplikácia sa otvorí v režime Prehrať a môžete sledovať automatické prehrávanie testovacích krokov. Zelený znak začiarknutia označuje úspešné vykonanie testovacieho kroku. Ak niektorý krok zlyhá, zobrazí sa červený indikátor zlyhania spolu s hlásením o zlyhaní.

    Režim prehrávania.

  4. Stlačte možnosť Hotovo sa vrátite do Test Studio.

Neúspešný kontrolný výraz

V tejto časti zmeníte kontrolný výraz testu tak, aby ste si mohli pozrieť neúspešný test:

  1. Vyberte pole výrazu, aby ste mohli upraviť krok kontrolného výrazu.

  2. V akcii testu aktualizujte hodnotu + 1 na hodnotu + 2. Táto aktualizácia znamená, že test očakáva vytvorenei dvoch záznamov, čo je nesprávne. Ak je test úspešný, v databáze by sa mal vytvoriť len jeden záznam.

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

    Akcia Assert, aktualizácia počtu.

  3. Stlačte možnosť Publikovať.

  4. Vyberte položku Prehrať.

  5. Sledujte prehratie testu. Posledný krok teraz zlyhá a zobrazí chybu a hlásenie, ktoré ste zadali v kroku kontrolného výrazu.

    Chyba pri prehrávaní.

Prehrávanie testov v prehľadávači

Máte možnosť skopírovať prepojenie na prehratie testu v samostatnom prehliadači mimo Test Studia. To vám pomáha integrovať svoje testy do kanála na súvislé vytváranie a vydávanie, akým je napríklad Azure DevOps.

Prepojenie na prehratie vybratého testu je trvalé. Pre testovací balík ani testovací prípad sa nemení. Testy môžete aktualizovať bez toho, aby bolo potrebné upravovať procesy vytvárania a vydávania.

Prehratie testov v prehliadači:

  1. Na pravej table vyberte testovací balík alebo testovací prípad.

  2. Kliknite na položku Kopírovať prepojenie na prehratie.

    Kopírovať prepojenie na prehratie.

  3. Ak existujú nejaké nepublikované zmeny, zobrazí sa výzva na publikovanie testov.

    Prepojenie na publikovanie pred kopírovaním.

  4. Môžete vybrať možnosť vynechania procesu publikovania a skopírovať prepojenie na prehratie. Ak tento krok vynecháte, nové zmeny testu sa neprehrajú.

    Prepojenie na prehrávanie sa skopírovalo.

  5. Otvorte prehliadač, prilepte URL adresu do panela s adresou a prehrajte test.

  6. Sledujte prehratie testu.

Nastavenie testov

Vlastnosť OnTestCaseStart testovacieho balíka sa dá použiť na nastavenie testu. Výraz zadaný pre túto vlastnosť sa spustí pre každý testovací prípad v sade predtým, ako sa prípad začne vykonávať. OnTestCaseStart vám pomôže vyhnúť sa tomu, aby ste na začiatku každého prípadu písali rovnaké testovacie kroky. Túto vlastnosť môžete prispôsobiť tak, aby spúšťala nastavovacie úlohy, ktoré sú spoločné pre všetky prípady v balíku, napríklad:

  • Test spustíte vždy od prvej obrazovky.
  • Inicializácia spoločných zbierok alebo premenných.
  • Načítavajú sa testovacie údaje zo zdroja údajov pre aktuálny vykonávajúci test

Záznam TestCaseInfo obsahuje podrobnosti pre prebiehajúci test. Obsahuje nasledujúce vlastnosti:

  • TestCaseName – názov testovacieho prípadu.
  • TestCaseDescription - opis skúšobného prípadu.
  • TestCaseId – ID testovacieho prípadu.
  • TestSuiteName – názov testovacieho balíka, do ktorého prípad patrí.
  • TestSuiteDescription - opis skúšobnej súpravy.
  • TestSuiteId – ID testovacieho balíka, do ktorého prípad patrí.

V nižšie uvedenom príklade si prispôsobíte vlastnosť OnTestCaseStart, takže každý testovací prípad sa začína od prvej obrazovky v aplikácii. Získate tiež testovacie údaje zo zdroju údajov, na ktoré sa môžete odvolať v krokoch pre testovací prípad.

  1. Kliknite na položku Test na ľavej table alebo na položku Zobraziť v hlavičke balíka.

    Test alebo zobrazenie vlastnosti nastavenia.

  2. Vyberte akciu OnTestCaseStart.

  3. Zadajte výraz, ktorým prejdete na prvú obrazovku a získajte testovacie údaje pre svoj test.

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

    Príklad OnTestCaseStart.

Spracovanie výsledkov testov

Pri použití prehliadača sa nezobrazuje panel testu, ktorý je viditeľný pri prehrávaní testov v Test Studiu. Z tohto dôvodu nebudete môcť určiť, ktorý konkrétny testovací krok sa vykonáva, a ani úspešnosť alebo neúspešnosť testu.

Ak chcete určiť výsledky testov mimo Test Studio, v objekte testu sú k dispozícii dve vlastnosti s názvami OnTestCaseComplete a OnTestSuiteComplete, pomocou ktorých môžete spracovať výsledky testov. Pri integrácii testov do kanála na súvislé vytváranie a vydávanie, akým je napríklad Azure DevOps, možno pomocou týchto vlastností určiť, či máte pokračovať s nasadením aplikácie.

Výraz zadaný pre tieto vlastnosti sa spustí pri dokončení každého prípadu alebo balíka. Tieto vlastnosti môžete prispôsobiť tak, aby spracovali výsledky testov a odoslali ich do rôznych zdrojov údajov alebo služieb, ako napríklad:

  • SQL Server.
  • Dataverse.
  • Power Automate.
  • Odoslať e-mail použitím Office 365.

Tieto nastavenia sa uplatňujú pre každý testovací balík alebo testovací prípad vo vašej aplikácii. Po dokončení každého testovacieho balíka alebo testovacieho prípadu sú výsledky testov a všetky hlásenia o sledovaní obsiahnuté v testoch k dispozícii v záznamoch TestCaseResult a TestSuiteResult.

Záznam TestCaseResult obsahuje nasledujúce vlastnosti:

  • TestCaseName – názov testovacieho prípadu.
  • TestCaseDescription - opis skúšobného prípadu.
  • TestCaseId – ID testovacieho prípadu.
  • TestSuiteName – názov testovacieho balíka, do ktorého prípad patrí.
  • TestSuiteDescription - opis skúšobnej súpravy.
  • TestSuiteId – ID testovacieho balíka, do ktorého prípad patrí.
  • StartTime – čas začatia vykonávania testu.
  • EndTime – čas skončenia vykonávania testu.
  • Traces – výsledok všetkých kontrolných výrazov testu a všetkých hlásení z funkcie Trace.
  • Success – označuje úspešné dokončenie testovacieho prípadu.
  • TestFailureMessage – hlásenie o zlyhaní v prípade zlyhania prípadu.

Záznam TestSuiteResult obsahuje nasledujúce vlastnosti:

  • TestSuiteName – názov testovacieho balíka.
  • TestSuiteDescription - opis skúšobnej súpravy.
  • TestSuiteId – ID testovacieho balíka.
  • StartTime – čas začatia vykonávania testovacieho balíka.
  • EndTime – čas skončenia vykonávania testovacieho balíka.
  • TestsPassed – počet úspešne dokončených testovacích prípadov v balíku.
  • TestsFailed – počet neúspešných testovacích prípadov v balíku.

V tejto rýchlej konfigurácii vytvoríte dve vlastné tabuľke v databáze Dataverse na uloženie výsledkov testov prispôsobením vlastností OnTestCaseComplete a OnTestSuiteComplete:

  1. Kliknite na položku Test na ľavej table alebo na položku Zobraziť v hlavičke balíka.

    Test alebo zobrazenie vlastnosti nastavenia.

  2. Vyberte akciu OnTestCaseComplete.

  3. Zadajte výraz na spracovanie výsledkov testu. Nasledujúca ukážka uloží výsledky všetkých testovacích prípadov do vlastnej tabuľke AppTestResults v službe Dataverse. Výsledky testov je možné uložiť aj do SQL, SharePoint alebo akéhokoľvek iného zdroja údajov. Pole Trace v zdroji údajov možno budete musieť nastaviť alebo zväčšiť podľa potreby.

    Poznámka

    Nasledujúce ukážky sa pripájajú k Microsoft Dataverse. Môžete si vytvoriť jednoduchú aplikáciu alebo vytvoriť aplikáciu od začiatku pomocou Dataverse. Pozrite si tiež referenčné informácie o funkcii Záplata, ktoré obsahujú ďalšie podrobnosti o úprave záznamov zdroja údajov použitého v nasledujúcich ukážkach.

    //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 example.

  4. Vyberte akciu OnTestSuiteComplete.

  5. Zadajte výraz na spracovanie výsledkov testu. V nasledujúcej ukážke uložíte výsledky všetkých testovacích prípadov do vlastnej tabuľky AppTestSuiteResults v službe 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
        }
    );
    

    OnTestSuiteComplete example.

Ďalšie príklady výrazov, ktoré môžete použiť v týchto vlastnostiach:

  • Poslať výsledky do postupu v Power Automate.

    MyTestResultsFlow.Run(JSON(TestCaseResult))
    
  • Odoslanie výsledkov e-mailom.

    Office365.SendMailV2("someone@example.com", "Test case results", JSON(TestCaseResult, JSONFormat.IndentFour))
    
  • Prijatie oznámenia o výsledku testu v aplikácii.

    Môžete napríklad prijať oznámenie po dokončení testu pri prehratí testu v prehliadači mimo Test Studio.

    Notify(TestCaseResult.TestCaseName & " : "
            & If( TestCaseResult.Success
                , " Passed"
                , TestCaseResult.TestFailureMessage)
            ,If(  TestCaseResult.Success
                , NotificationType.Success
                , NotificationType.Error)
    )
    

Funkcie testov

Okrem funkcií, ktoré sú k dispozícii v službe Power Apps, budete pri vytváraní testov zvyčajne používať nasledujúce bežné funkcie.

Ďalšie kroky

Poznámka

Môžete nás informovať o svojich voľbách jazyka pre dokumentáciu? Absolvujte krátky prieskum. (upozorňujeme, že tento prieskum je v angličtine)

Prieskum bude trvať približne sedem minút. Nezhromažďujú sa žiadne osobné údaje (vyhlásenie o používaní osobných údajov).