testim io tutorial speed up authoring
V tomto praktickom výučbe sa dozviete, ako vytvoriť stabilné testy za pár minút pomocou automatizačného nástroja Testim a ako pomocou procesu strojového učenia urýchliť tvorbu, vykonávanie a údržbu automatizovaných testov.
Keď začujeme frázu „Automatizačný nástroj“, v súvislosti s našimi testami si spomenieme na nasledujúce hlavné hľadiská:
vytvoriť reťazcové pole v jave
- Tvorba a vykonávanie
- Stabilita
- Opätovná použiteľnosť
- Rozšíriteľnosť
- Údržba
- Riešenie problémov
- Podávanie správ
- Integrácia CI / CD
Na trhu existuje veľa nástrojov, ktoré sa venujú jednému alebo niekoľkým z vyššie uvedených faktorov, ale nie všetkým. To je miesto, kde prichádza na scénu Testim.io.
Testim.io nie je nástroj, ale platforma, ktorá obsahuje takmer všetky hlavné faktory automatizovaných testov, ako je tvorba a vykonávanie, údržba, odstraňovanie problémov, vykazovanie atď. So zavedením konceptu dynamických lokátorov sa zameriavajú na niekoľko ďalších typov testovania, ako je funkčné testovanie, end-to-end testovanie a testovanie používateľského rozhrania.
Zvyšuje roztiahnuteľnosť a stabilitu vašich testovacích súborov. A tiež dáva tímom a organizáciám flexibilitu na rozšírenie funkcionality platformy pomocou komplexnej programovacej logiky s jazykom JavaScript a HTML.
Tu je podrobný prehľad o Testim.io a o tom, ako pomáha prekonávať niektoré výzvy, ktorým zákazníci čelia počas automatizácie.
Čo sa dozviete:
- V čom sa tento nástroj líši od iných nástrojov?
- Testim.io nie je platforma, NIE záznam ani nástroj na prehrávanie
- Riešenie kľúčových faktorov
- Záver
- Odporúčané čítanie
V čom sa tento nástroj líši od iných nástrojov?
Aby sme pochopili, ako sa Testim odlišuje od ostatných nástrojov, urobme krok späť k vývoju automatizačných nástrojov za posledné desaťročie.
Za posledných 10 rokov existovalo niekoľko nástrojov dodávateľov a nástrojov otvoreného zdroja, ktoré sa pokúšali vyriešiť rôzne problémy spojené s automatizovaným testovaním. Jedným z hlavných problémov, ktorým sa však doteraz nikto nevenoval, je použitie statických ID.
Napríklad , povedzme, že vývojár zmení na webovej stránke názov ID alebo niektorý atribút prvku. Automatizované testy sa kvôli tejto zmene okamžite prerušia, pretože stále odkazujú na starý názov ID. To vedie k nestabilným testom a testéri musia venovať ich údržbe veľa času.
Zaviedli koncept Dynamické lokátory . Umelá inteligencia (AI) pod platformou v reálnom čase analyzuje všetky objekty DOM na stránke a extrahuje objekty a ich vlastnosti.
Nakoniec AI na základe tejto analýzy rozhodne o najlepšej lokalizačnej stratégii na lokalizáciu konkrétneho prvku.
Z tohto dôvodu, aj keď vývojár zmení atribút prvku, test stále beží a vedie k stabilnejším testom. Výsledkom je, že vytváranie a vykonávanie automatizovaných testov je oveľa rýchlejšie a stabilnejšie.
Testim.io nie je platforma, NIE záznam ani nástroj na prehrávanie
Predovšetkým to nie je nástroj, ale platforma.
Má robustné funkcie, ktoré nielen pomáhajú automatizovať vaše testy, ale starajú sa aj o ďalšie dôležité aspekty vašich testov, ako napríklad spúšťanie testov lokálne a v cloude (ich súkromná mriežka alebo mriežka tretej strany), integrácia s CI / CD. systémy, zaznamenávanie protokolov a snímok obrazovky testovacích behov, poskytovanie podrobných správ o testovacích behoch pomocou grafov, štatistík a ďalších súvisiacich informácií.
A nakoniec je integrácia s široko používanými nástrojmi na sledovanie chýb veľmi jednoduchá na zachytávanie a hlásenie chýb.
Po druhé, dáva organizáciám a tímom flexibilitu pri vytváraní vlastných obalov na platforme pomocou komplexnej programovacej logiky s jazykom JavaScript a HTML. Týmto spôsobom môže ktokoľvek rozšíriť funkčnosť platformy.
Nakoniec sa plošina zarovná s Paradigma Shift-Left kde môžu vývojári a testeri začať písať testy hneď od začiatku tým, že budú pracovať na rôznych vetvách bez toho, aby si navzájom prepísali zmeny. Pomáha tiež tímom spolupracovať a dáva flexibilitu pre kohokoľvek, aby mohol písať automatizované testy prostredníctvom svojich vstavaných funkcií.
Týmto spôsobom môže aj netechnický člen tímu hodnotne prispieť k vašim automatizovaným testom. Platforma pomáha vštepiť koncept, ktorý automatizované testy by mali byť jednoduché, efektívne, stabilné a na základe spolupráce.
Riešenie kľúčových faktorov
Ako sa spoločnosť Testim zameriava na kľúčové faktory, ktoré sú nevyhnutné pre automatické testy?
Tvorba a vykonávanie
Automatizované testy musia byť ľahko tvoriteľné a môžu sa vykonávať kdekoľvek a kedykoľvek.
Spoločnosť Testim k tomu pomáha nasledujúcimi spôsobmi:
1) Vytvorenie testu
Nový Test vytvoríme kliknutím na „Vytvoriť nový“ alebo „Nový test“ .
2) Nahrávanie a prehrávanie testu
Akonáhle klikneme na „Záznam“ tlačidlo, môžeme v našej aplikácii zaznamenávať rôzne akcie používateľov.
Po zaznamenaní rôznych akcií kliknite na „Stop Recording“ ukončite zaznamenávanie našich testov. Použi 'Hrať' tlačidlo na opätovné prehratie zaznamenaného testu a „Uložiť“ na uloženie testov.
3) Validácie a tvrdenia
Táto platforma pomáha pri overovaní rôznych atribútov prvku a skutočne jednoduchých rozhraní API.
Rôzne možnosti pre používateľov, ako napríklad:
- Pridávanie vlastných overení pomocou JavaScriptu a HTML
- Overiť viditeľnosť prvku
- Overiť text prvku
- Overenie úrovne pixelov
- Overenie úrovne API
4) Screenshoty
Zatiaľ čo je každý test zaznamenaný, platforma urobí snímku obrazovky všetkých výsledkov Pass and Failed každého kroku. Vďaka tomu je pre používateľov jednoduchšie riešenie problémov a pochopenie toho, čo sa deje pod kapotou.
Napríklad , Na nasledujúcej snímke obrazovky si všimneme, že atribúty „Vybrať cieľ“ tlačidlo sa zmenilo, ale test stále prebiehal, pretože sa použil nástroj AI Dynamické lokátory . Nezmenila sa ani funkčnosť systému, ale iba atribút prvku.
Získame tiež snímku obrazovky toho, čo sa presne stalo počas vykonania testu, a to zobrazením očakávaného obrázka (základná línia) a skutočného obrázka.
(Poznámka:Pre zväčšenie kliknite na nasledujúci obrázok)
5) Spätná väzba na každý krok
Používateľ tiež dostane spätnú väzbu ku každému kroku, pokiaľ ide o to, či testy prešli alebo zlyhali, a to uvedením a 'Zelená' alebo „Červená ikona“ v ľavej hornej časti každého kroku, ako je uvedené nižšie:
6) Skúšky označovania
Testim poskytuje funkciu na označenie každého testu, ktorý používateľ vytvorí.
Existujú dva dôvody, pre ktoré môžeme test označiť:
- Na prvom mieste pomáha identifikovať dôvod, pre ktorý bol test vytvorený.
- Pomáha spúšťať testy s rovnakým štítkom naraz prostredníctvom funkcie CLI.
Štítky vytvárame kliknutím na ikonu „Štítok“ a vyberte existujúci štítok alebo vytvorte nový.
7) Dokumentácia používateľa
Poskytujú používateľom všetku dokumentáciu, ktorú budú potrebovať na používanie rôznych funkcií tejto platformy.
Väčšinu odpovedí o používaní tejto platformy nájdete po kliknutí na ikonu „Vzdelávať“ na karte Dokumentácia a na stránke venovanej dokumentácii, ako je uvedené nižšie:
Z vyššie uvedených dôvodov Testim.io pomáha, aby sa vytváranie a vykonávanie testov stalo skutočne rýchle a jednoduché. Počas niekoľkých sekúnd môže používateľ zaznamenať, prehrať a uložiť testy.
Stabilita
Testovacie použitia Dynamické lokátory namiesto statických id. Z tohto dôvodu sú testy stabilnejšie a čím viac testov vykonávame, tým inteligentnejšia je AI pri zabezpečovaní väčšej stability automatizovaných testov.
Užívateľ bude môcť vidieť rôzne stratégie umiestnenia, ktoré používa ich AI na lokalizáciu prvku v IDE, prostredníctvom servera Panel Vlastnosti pre každý prvok, s ktorým interagujeme prostredníctvom našich automatizovaných testov.
Ako si môžeme všimnúť, AI analyzuje všetky objekty DOM, uvádza ich na paneli Vlastnosti spolu s rebríčkami jednotlivých stratégií umiestnenia pre konkrétny prvok. Týmto spôsobom, aj keď sa zmení atribút prvku, môže AI použiť inú stratégiu umiestnenia z už analyzovaného zoznamu objektov DOM.
Používateľ sa tak nemusí obávať šupinatých testov.
Opätovná použiteľnosť
Jedným z dobrých postupov pri písaní automatizovaných testov je vytváranie opakovane použiteľných komponentov, ktoré je možné použiť v rôznych častiach našej testovacej sady.
Prečo je to dôležité?
Vytváranie opakovane použiteľných komponentov je dôležité, pretože:
- Pomáha zvyšovať čitateľnosť automatizovaných testov.
- Šetrí úsilie tým, že nebude opakovať rovnakú sériu krokov v rôznych častiach testov.
- Akékoľvek zmeny v opätovne použiteľnom kroku je potrebné vykonať iba na jednom mieste a odráža sa to v priebehu testov, v rôznych projektoch.
- Robí rozšírené automatizované testy.
Testim pomáha zaistiť opätovnú použiteľnosť do „Zoskupenie“ a „Parametrizácia“.
1) Zoskupenie
Akýkoľvek počet súvisiacich krokov je možné zoskupiť do jedného opakovane použiteľného komponentu.
Napríklad - 'Prihlásiť sa' scenár je jedným z najbežnejšie používaných krokov v akejkoľvek aplikácii. Spôsob, akým môžeme vytvoriť opakovane použiteľný krok „Prihlásenie“, by bol výber krokov, ktoré chceme zoskupiť, a potom kliknutie na „Pridať novú skupinu“ ako je uvedené nižšie:
2) Parametrizácia
Táto platforma poskytuje možnosť testovania aplikácie pomocou rôznych kombinácií vstupu prostredníctvom parametrizácie.
To sa dá dosiahnuť rôznymi spôsobmi.
Jedným zo spôsobov, ako to urobiť, je zadať všetky vstupné parametre, ktoré by sme potrebovali na otestovanie aplikácie vo forme súboru JSON v kroku Setup (prvý krok našich testov), ako je uvedené nižšie:
Rozšíriteľnosť
Tento nástroj poskytuje organizáciám flexibilitu pri rozširovaní funkcií tejto platformy pomocou JavaScriptu a HTML. Týmto spôsobom, v prípade akejkoľvek funkcionality, ktorú táto platforma nespracováva, môže užívateľ napísať svoj vlastný kód na vytvorenie robustného automatizačného rámca
Napríklad - Povedzme, že chceme potvrdiť „Vybrať cieľ“ tlačidlo z našich predchádzajúcich príkladov.
Spôsob, ako to dosiahnuť, by bol.
- Kliknite na „Pridať vlastnú akciu“.
- Pomenujte Nový krok a kliknite na „Potvrdiť“.
- Pre tento príklad kliknite na „PARAMY“ a vyberte „HTML“.
- Pridajte vlastný kód.
- Nový krok s Colný kódex sa pridá do zoznamu už existujúcich krokov.
Údržba
Jedným z najdôležitejších faktorov súvisiacich s automatizovanými testami je „ Údržba “.
Na údržbu testov sa vynakladá veľa úsilia než na samotné písanie testov. To vedie k plytvaniu cenným úsilím a časom od zdrojov, ktoré by mohli stráviť tento čas radšej testovaním skutočnej aplikácie.
Testim pomáha minimalizovať úsilie potrebné na údržbu automatizovaných testov nasledujúcimi spôsobmi:
1) Kontrola verzie
V každom okamihu je dôležité mať protokoly o tom, aké zmeny sa vykonali v konkrétnom teste. Týmto spôsobom sa môžeme kedykoľvek vrátiť k staršej verzii testu, kedykoľvek je to potrebné. Táto platforma poskytuje túto funkciu tým, že zobrazuje celú históriu verzií tak, že prejde na panel Vlastnosti v kroku nastavenia a klikne na „Zobraziť staré verzie“ .
2) Vetvenie
V „ Paradigma posunu doľava ”Kde vývoj aj testovanie musia začať paralelne čo najskôr v životnom cykle vývoja softvéru.
Majúc na pamäti, že poskytujú tímom funkcionalitu na vytváranie samostatných pobočiek pre každého člena tímu a prácu na rovnakých projektoch a testoch. Týmto spôsobom nikto nemôže prepísať zmeny ostatných členov tímu a tímy môžu kedykoľvek pracovať na rovnakej kódovej základni.
Musíte len vybrať 'Vidlička' Ak chcete vytvoriť novú pobočku, môžete tiež prepínať medzi existujúcimi pobočkami.
Používatelia majú možnosť naplánovať svoje testy. To pomáha vykonávať testy automaticky v určitý deň a čas bez manuálneho zásahu. Môžeme vás tiež informovať e-mailom v prípade akýchkoľvek chýb.
Riešenie problémov
Ako testeri trávime pri riešení problémov značné množstvo času. Na pomoc pri riešení problémov ponúka táto platforma používateľom rôzne možnosti zúženia rozsahu problému.
Medzi tieto možnosti patria:
1) Screenshoty
Funkcia snímky obrazovky vysvetlená v časti „Tvorba a vykonávanie“ pomáha používateľom zistiť, aký bol základný obrázok a aký je skutočný nájdený obrázok.
2) Panel Vlastnosti
Panel vlastností pomáha zachytiť chybové správy a zobraziť ich používateľovi.
Napríklad, Ak prvok nie je viditeľný a test zlyhá, na paneli sa zobrazí chybové hlásenie uvedené nižšie.
3) Testovacie protokoly
Denníky sú bohatým zdrojom informácií o tom, čo sa stalo pod používateľským rozhraním. Tento nástroj poskytuje protokoly testov, keď používateľ spustí testy v našej sieti alebo v sieti tretích strán. Túto možnosť nájdete na paneli vlastností v kroku nastavenia.
4) Dokumentácia
Spoločnosť Testim venovala veľa úsilia zdokumentovaniu väčšiny funkcií tohto nástroja v dokumentácii pre používateľov, ktorá sa nachádza pod „Vzdelávať“ tab.
Podávanie správ
Toto je jeden z najdôležitejších aspektov vašich testov, aby ste získali prehľad o tom, čo testy prebehli, prešli, neúspešne, trvanie testu, aké kombinácie prehľadávačov atď.
Testim.io poskytuje 2 typy funkcie prehľadov:
1) Hlásenie balíkov a testovacích behov
Keď používatelia kliknú na možnosť „Spustenia“ v bočnej ponuke, môžu si pozrieť celú sadu a testovacie behy so všetkými požadovanými podrobnosťami, ako je uvedené nižšie. To pomáha zviditeľniť sa pri testovacích behoch a uľahčuje vytváranie prehľadov.
2) Hlásenie chýb
Denne trávime značné množstvo času hlásením chýb. Toto je jedna z najkritickejších a časovo najnáročnejších častí testovania.
Testim.io pomáha znižovať čas hlásenia chýb a zvyšovať produktivitu tým, že poskytuje chrómové rozšírenie na rýchle zachytenie a hlásenie chýb. Pomocou tohto rozšírenia môžeme zachytiť snímky obrazovky, videá s chybou a zaznamenať skutočný automatický test. Integruje sa s väčšinou široko používaných systémov na sledovanie chýb.
Po zachytení vady a kliknutí na „Zverejniť“, automaticky vyplní všetky požadované kroky v popise chyby. Pridáva tiež snímku obrazovky, video a automatizované testy s chybou.
(Poznámka:Pre zväčšenie kliknite na nasledujúci obrázok)
Integrácia CI / CD
Tento nástroj sa integruje do rôznych systémov CI / CD, ako sú Jenkins, Travis CI, Circle CI a ďalších nástrojov na vytváranie. Integruje sa tiež s mriežkami tretích strán hostiacimi ich vlastný súkromný cloud na vykonávanie testov. To všetko sa deje prostredníctvom CLI (Command Line Interface), ktoré poskytujeme na platforme.
Kliknutím na ikonu 'Nastavenie' ikona z bočnej ponuky otvorí CLI.
Je vopred naplnený príkazmi, ktoré je potrebné vykonať pri testoch na systémoch CI / CD, mriežkach tretích strán alebo ich mriežkach. Musíme len kliknúť na „Kopírovať“ a doslovne vložte príkaz do ľubovoľného nástroja alebo mriežky na zostavenie, ktoré organizácia používa.
CLI akceptuje aj ďalšie parametre na vykonávanie konkrétnych testov, na paralelné vykonávanie testov, na prepísanie základnej adresy URL a na oveľa viac funkcií.
=> Všetky parametre, ktoré je možné použiť, sú tu uvedené v zozname tejto používateľskej príručke .
Záver
Stručne povedané, platforma Testim.io pomáha prekonať niektoré z hlavných výziev automatizácie, ktoré sú opísané v predchádzajúcich častiach. Vďaka tomu môžete urobiť automatizáciu jednoduchšou a stabilnejšou.
Táto platforma pomôže:
- Členovia netechnického tímu, ktorí sa zapoja do automatizácie a vypracúvajú dôkladné testy.
- Členovia technického tímu používajú komplexnú logiku programovania na rozšírenie funkcií tejto platformy.
- Tvorba a vykonávanie testov sú veľmi rýchle.
- Testy sú stabilnejšie pri použití „Dynamické lokátory“ .
Celkovo ide o platformu, ktorá pomáha v rôznych aspektoch automatizácie testov a sú v procese vytvárania ďalších funkcionalít, ktoré pomáhajú agilným tímom a organizáciám spolupracovať s mottom JEDEN TÍM a JEDEN CIEĽ.
=> Môžeš tu nájdete ďalšie informácie o tomto nástroji
Neváhajte a opýtajte sa, či máte nejaké otázky, a tiež sa podeľte o svoje myšlienky v sekcii komentárov, pretože by nás zaujímalo, pred akými výzvami automatizácia stojí a ako sa vám ich podarilo vyriešiť.
Odporúčané čítanie
- Ako paralelne spustiť rozsiahle vykonávanie testov Appium
- Integrujte sa do svojho IDE a spustite svoje testy Appium
- Vytvorte testy Appium pre aplikáciu pre Android
- Paralelné spustenie testov Appium pomocou aplikácie Appium Studio pre Eclipse
- Vytváranie epochálnych testov pomocou epoch Studio pre Eclipse
- Písanie testov jednotiek s programom Spock Framework
- Hlásenie Specflow: Ako generovať protokoly o testoch a vykonávať selektívne testy
- Nasadenie Java: Vytvorenie a vykonanie súboru Java JAR