testim io tutorial speed up authoring
În acest tutorial practic, veți învăța cum să construiți teste stabile în câteva minute folosind instrumentul de automatizare Testim și să utilizați procesul de învățare automată pentru a accelera crearea, executarea și întreținerea testelor automate.
Când auzim expresia „Instrument de automatizare”, considerațiile majore care ne vin în minte în ceea ce privește testele noastre includ:
diferența dintre îmbinarea stângă și îmbinarea exterioară stângă în sql
- Autorizare și executare
- Stabilitate
- Reutilizarea
- Extensibilitate
- întreținere
- Depanare
- Raportarea
- Integrare CI / CD
Există multe instrumente pe piață care abordează unul sau câțiva dintre factorii de mai sus, dar nu toți. Aici intervine Testim.io.
Testim.io nu este un instrument, ci o platformă care include aproape toți factorii principali precum Autorizarea și executarea, întreținerea, depanarea, raportarea etc., a testelor automate. Odată cu introducerea conceptului de localizatori dinamici, aceștia se concentrează pe mai multe tipuri de testare, cum ar fi testarea funcțională, testarea end-to-end și testarea UI.
Crește extensibilitatea și stabilitatea suitelor de testare. Și oferă, de asemenea, echipelor și organizațiilor, flexibilitatea de a extinde funcționalitățile platformei utilizând o logică complexă de programare cu JavaScript și HTML.
Iată o perspectivă detaliată despre Testim.io și cum ajută la depășirea unora dintre provocările cu care se confruntă clienții în timpul automatizării.
Ce veți învăța:
- În ce este diferit acest instrument de alte instrumente?
- Testim.io este o platformă și NU o înregistrare și nici un instrument de redare
- Abordarea factorilor cheie
- Concluzie
- Lectură recomandată
În ce este diferit acest instrument de alte instrumente?
Pentru a înțelege modul în care Testim se diferențiază de celelalte instrumente, să facem un pas înapoi asupra modului în care au evoluat instrumentele de automatizare în ultimul deceniu.
În ultimii 10 ani, au existat mai multe instrumente pentru furnizori și instrumente open source care au încercat să soluționeze diferitele probleme legate de testarea automată. Dar, o problemă majoră pe care nimeni nu a abordat-o până acum este utilizarea ID-urilor statice.
De exemplu , să spunem că un dezvoltator schimbă numele ID-ului sau un atribut al unui element de pe pagina web. Testele automate se întrerup imediat datorită acestei modificări, deoarece se referă în continuare la vechiul nume de identificare. Acest lucru duce la teste instabile, iar testerii trebuie să petreacă mult timp întreținându-le.
Au introdus conceptul de Localizatori dinamici . Inteligența artificială (AI) de sub platformă în timp real, analizează toate obiectele DOM ale unei pagini și extrage obiectele și proprietățile acesteia.
În cele din urmă, AI decide cea mai bună strategie de localizare pentru a localiza un anumit element pe baza acestei analize.
Datorită acestui fapt, chiar dacă un dezvoltator schimbă atributul unui element, testul continuă să ruleze și acest lucru duce la teste mai stabile. Ca urmare, crearea și executarea testelor automate sunt mult mai rapide și mai stabile.
Testim.io este o platformă și NU o înregistrare și nici un instrument de redare
În primul rând, acesta nu este un instrument, ci o platformă.
Are caracteristici robuste care nu numai că vă ajută să vă automatizeze testele, dar se ocupă și de celelalte aspecte importante ale testelor, cum ar fi rularea testelor la nivel local și în cloud (grila lor privată sau grila terță parte), integrarea cu CI / CD sisteme, capturarea jurnalelor și capturilor de ecran ale testelor, oferind raportări detaliate ale testelor cu grafice, statistici și alte informații conexe.
Și, în cele din urmă, simplificarea captării și raportării erorilor prin integrarea cu instrumentele de urmărire a erorilor utilizate pe scară largă.
În al doilea rând, oferă organizațiilor și echipelor flexibilitatea de a-și construi propriile împachetări în jurul platformei utilizând o logică complexă de programare cu JavaScript și HTML. În acest fel, oricine poate extinde funcționalitatea platformei.
În cele din urmă, platforma se aliniază cu Paradigma Shift-Stânga unde dezvoltatorii și testerii pot începe să scrie testele chiar de la început lucrând pe diferite ramuri fără a suprascrie modificările celuilalt. De asemenea, ajută echipele să colaboreze și oferă flexibilitatea oricui să scrie teste automate prin funcționalitățile sale încorporate.
În acest fel, chiar și un membru al echipei non-tehnice poate aduce contribuții valoroase la testele dvs. automate. Platforma ajută la insuflarea conceptului că, testele automate ar trebui să fie simple, eficiente, stabile și colaborative.
Abordarea factorilor cheie
Cum abordează Testim factorii cheie care sunt vitali pentru testele automate?
Autorizare și executare
Testele automate trebuie să fie ușor de creat și executat de oriunde și oricând.
Testim vă ajută să faceți acest lucru în următoarele moduri:
1) Crearea unui test
Creăm un nou Test făcând clic pe „Creați nou” sau „Test nou” .
2) Înregistrarea și redarea unui test
Odată ce facem clic pe 'Record' butonul, putem înregistra diferite acțiuni ale utilizatorilor în aplicația noastră.
După înregistrarea diferitelor acțiuni, faceți clic pe „Opriți înregistrarea” pentru a termina înregistrarea testelor noastre. Folosește 'Joaca' pentru a reda testul înregistrat și butonul 'Salvați' pentru a salva testele.
3) Validări și afirmații
Această platformă ajută la validarea diferitelor atribute ale unui element și a API-urilor cu adevărat simple.
Diverse opțiuni pentru utilizatori, cum ar fi:
- Adăugarea validărilor personalizate utilizând JavaScript și HTML
- Validați vizibilitatea elementului
- Validați textul elementului
- Validare la nivel de pixeli
- Validare la nivel API
4) Capturi de ecran
În timp ce fiecare test este înregistrat, platforma realizează o captură de ecran a tuturor rezultatelor trecute și nereușite ale fiecărui pas. Prin urmare, utilizatorii găsesc mai ușor soluționarea problemelor și înțeleg ce se întâmplă sub capotă.
De exemplu , În captura de ecran de mai jos, vom observa că atributele fișierului „Selectați destinația” butonul s-a schimbat, dar testul a funcționat în continuare, deoarece instrumentul folosit de AI Localizatori dinamici . De asemenea, funcționalitatea sistemului nu s-a schimbat, ci doar atributul unui element.
De asemenea, obținem captura de ecran a ceea ce s-a întâmplat exact în timpul rulării testului, afișând imaginea așteptată (linia de bază) și imaginea reală.
(Notă:Faceți clic pe imaginea de mai jos pentru o vizualizare mărită)
5) Feedback la fiecare pas
Utilizatorul primește, de asemenea, feedback-ul cu privire la fiecare pas în ceea ce privește dacă testele au trecut sau nu au fost afișate 'Verde' sau „Pictogramă roșie” în partea din stânga sus a fiecărui pas, după cum se arată mai jos:
6) Încercări de etichetare
Testim oferă funcția de a eticheta fiecare test pe care îl creează un utilizator.
Există două motive pentru care am putea dori să etichetăm un test:
- Ajută la identificarea motivului pentru care testul a fost creat în primul rând.
- Ajută la executarea testelor cu aceeași etichetă dintr-o dată prin caracteristica CLI.
Modul în care creăm etichete este făcând clic pe 'Eticheta' și selectați o etichetă existentă sau creați una nouă.
7) Documentația utilizatorului
Acestea oferă utilizatorilor toată documentația de care vor avea nevoie pentru a utiliza diferitele caracteristici ale acestei platforme.
Majoritatea răspunsurilor despre utilizarea acestei platforme pot fi găsite făcând clic pe 'Educa' și vizitând site-ul de documentare așa cum se arată mai jos:
Datorită motivelor de mai sus, Testim.io ajută la crearea și executarea testelor cu adevărat rapidă și simplă. În câteva secunde, un utilizator poate înregistra, reda și salva testele.
Stabilitate
Testarea utilizărilor Localizatori dinamici în loc de id-uri statice. Datorită acestui fapt, testele sunt mai stabile și cu cât efectuăm testele cu atât mai inteligent devine AI în a asigura mai multă stabilitate testelor automate.
Un utilizator va putea vedea diferitele strategii de localizare pe care IA le folosește pentru a localiza un element în IDE, prin intermediul Panoul Proprietăți , pentru fiecare element pe care îl interacționăm prin testele noastre automate.
După cum putem observa, AI analizează toate obiectele DOM, le listează în panoul Proprietăți, împreună cu clasamentele fiecărei strategii de locație pentru acel element particular. În acest fel, chiar dacă atributul unui element se schimbă, atunci AI poate utiliza o strategie de localizare diferită de lista deja analizată a obiectelor DOM.
Astfel, un utilizator nu trebuie să-și facă griji cu privire la testele fulguroase.
Reutilizarea
Una dintre bunele practici de scriere a testelor automate este crearea de componente reutilizabile care pot fi utilizate în diferite părți ale suitei noastre de testare.
De ce este important acest lucru?
Crearea componentelor reutilizabile este importantă deoarece:
- Ajută la creșterea lizibilității testelor automate.
- Economisește efortul prin faptul că nu repetă același set de pași în diferite părți ale testelor.
- Orice modificare a pasului reutilizabil trebuie făcută doar într-un singur loc și se reflectă pe parcursul testelor, în diferite proiecte.
- Face testele automate mai extensibile.
Testim ajută la asigurarea reutilizării prin „Grupare” și „Parametrizare”.
1) Gruparea
Orice număr de pași asociați poate fi grupat într-o componentă reutilizabilă.
De exemplu - 'Logare' scenariul este unul dintre pașii cei mai utilizați în orice aplicație. Modul în care putem crea un pas „Login” reutilizabil ar fi să selectăm pașii pe care dorim să îi grupăm și apoi să facem clic pe „Adăugați un grup nou” așa cum se arată mai jos:
2) Parametrizare
Această platformă oferă opțiunea de a testa aplicația prin diferite combinații de intrare prin Parametrizare.
Acest lucru poate fi realizat în diferite moduri.
O modalitate de a face acest lucru este de a da toți parametrii de intrare de care ar trebui să testăm aplicația sub forma unui fișier JSON în pasul de configurare (primul pas al testelor noastre) așa cum se arată mai jos:
Extensibilitate
Acest instrument oferă flexibilitatea organizațiilor pentru a extinde funcționalitățile acestei platforme folosind JavaScript și HTML. În acest fel, în orice funcționalitate pe care această platformă nu o gestionează, utilizatorul își poate scrie propriul cod pentru a construi un cadru de automatizare robust
De exemplu - Spune că vrem să validăm „Selectați destinația” din exemplele noastre anterioare.
Modul de a face acest lucru ar fi.
- Click pe „Adăugați acțiune personalizată”.
- Dați un nume noului pas și faceți clic pe 'A confirma'.
- Faceți clic pe „PARAMS” și selectați „HTML” pentru acest exemplu.
- Adăugați cod personalizat.
- Noul pas cu Cod personalizat se adaugă la lista pașilor deja existenți.
întreținere
Unul dintre cei mai importanți factori legați de testele automate este „ întreținere ”.
Se depune mult efort pentru menținerea testelor decât pentru scrierea testelor propriu-zise. Acest lucru duce la risipa de efort și timp valoros din resursele care ar fi putut să petreacă mai degrabă acel timp pe testarea aplicației reale.
Testim ajută la minimizarea efortului necesar pentru menținerea testelor automate în următoarele moduri:
1) Control versiune
În orice moment, este important să aveți jurnalele cu modificările aduse unui anumit test. În acest fel, putem reveni oricând la versiunea mai veche a unui test, atunci când este necesar. Această platformă oferă această funcționalitate afișând tot istoricul versiunilor accesând panoul Proprietăți din pasul de configurare și făcând clic pe „Vedeți versiunile vechi” .
2) Ramificare
În ' Shift Stânga Paradigma ”În care atât dezvoltarea cât și testarea trebuie să înceapă în paralel cât mai devreme posibil în ciclul de viață al dezvoltării software-ului.
Ținând cont de faptul că acestea oferă funcționalitatea echipelor de a crea sucursale separate pentru fiecare membru al echipei și de a lucra la aceleași proiecte și teste. În acest fel, nimeni nu poate suprascrie modificările celorlalți membri ai echipei și echipele pot lucra pe aceeași bază de cod în orice moment.
Trebuie doar să selectați 'Furculiţă' pentru a crea o ramură nouă și puteți comuta, de asemenea, între ramurile existente.
Utilizatorii au opțiunea de a-și programa testele. Acest lucru ajută la efectuarea testelor în mod automat într-o anumită zi și oră, fără nicio intervenție manuală. De asemenea, putem primi notificări prin e-mail în caz de erori.
Depanare
În calitate de testeri, petrecem o cantitate considerabilă de timp în soluționarea problemelor. Pentru a ajuta la soluționarea problemelor, această platformă oferă diferite opțiuni utilizatorilor pentru a restrânge domeniul de aplicare al problemei.
Aceste opțiuni includ:
1) Capturi de ecran
Funcția de captură de ecran explicată în secțiunea „Autorizare și executare” îi ajută pe utilizatori să știe care a fost imaginea de bază și care este imaginea reală găsită.
2) Panoul Proprietăți
Panoul de proprietăți ajută la captarea mesajelor de eroare și afișarea acestuia către utilizator.
De exemplu, Când un element nu este vizibil și testul eșuează, primim mesajul de eroare de mai jos în panou.
3) Testează jurnalele
Jurnalele sunt o sursă bogată de informații despre ceea ce s-a întâmplat sub interfața de utilizare. Instrumentul oferă jurnale de testare atunci când utilizatorul rulează testele pe grila noastră sau pe o grilă terță parte. Opțiunea poate fi găsită în panoul de proprietăți al pasului de configurare.
4) Documentare
Testim a depus mult efort pentru a documenta majoritatea caracteristicilor instrumentului în Documentația pentru utilizator care se găsește în 'Educa' filă.
Raportarea
Acesta este unul dintre cele mai importante aspecte ale testelor dvs. pentru a obține vizibilitatea asupra testelor care au rulat, promovat, eșuat, durata rulării, ce combinații de browser și așa mai departe.
Testim.io oferă 2 tipuri de caracteristici de raportare:
1) Raportarea suitei și a testelor
Atunci când utilizatorii fac clic pe opțiunea „Rulează” din meniul lateral, pot vedea toată suita și testele cu toate detaliile necesare, așa cum se arată mai jos. Acest lucru ajută la obținerea vizibilității testelor și la facilitarea raportării.
2) Raportarea erorilor
Petrecem o cantitate considerabilă de timp într-o zi raportând erori. Aceasta este una dintre cele mai critice și consumatoare de timp părți ale testării.
Testim.io ajută la reducerea timpului de raportare a erorilor și la creșterea productivității oferind o extensie cromată pentru a captura și raporta rapid erorile. Putem captura capturi de ecran, videoclipuri ale erorii și putem înregistra un test automat automat cu această extensie. Se integrează cu majoritatea sistemelor de urmărire a erorilor utilizate pe scară largă.
După capturarea defectului și clic pe 'Publica', completează automat toți pașii necesari în Descrierea erorilor. De asemenea, adaugă captura de ecran, video și testele automate cu defectul.
(Notă:Faceți clic pe imaginea de mai jos pentru o vizualizare mărită)
Integrare CI / CD
Acest instrument se integrează cu diferite sisteme CI / CD, cum ar fi Jenkins, Travis CI, Circle CI și alte instrumente de construcție. De asemenea, se integrează cu grilele terțe care găzduiesc propriul cloud privat pentru a rula teste. Toate acestea se fac prin intermediul interfeței CLI (Command Line Interface) pe care o oferim în platformă.
Dând clic pe „Setări” pictograma din meniul lateral deschide CLI.
Este pre-populat cu comenzile care trebuie să ruleze testele pe sisteme CI / CD, rețele terțe sau rețelele acestora. Trebuie doar să facem clic pe 'Copie' și, literalmente, lipiți comanda în orice instrument de construcție sau grilă pe care îl folosește organizația.
CLI acceptă și ceilalți parametri pentru a rula teste specifice, pentru a rula teste în paralel, pentru a suprascrie adresa URL de bază și mult mai multe funcționalități.
=> Toți parametrii care pot fi utilizați sunt enumerați aici în acest ghid de utilizare .
Concluzie
Pe scurt, platforma Testim.io ajută la depășirea unora dintre provocările majore cu automatizarea, așa cum este descris în secțiunile de mai sus. Cu aceasta, puteți face automatizarea mai simplă și mai stabilă.
Această platformă vă va ajuta:
- Membrii echipei non-tehnice să se implice în automatizare și să scrie teste solide.
- Membrii echipei tehnice folosesc o logică complexă de programare pentru a extinde funcționalitățile acestei platforme.
- Crearea și executarea testelor sunt foarte rapide.
- Testele sunt mai stabile cu utilizarea „Localizatori dinamici” .
În general, este o platformă care ajută în diferite fațete ale automatizării testelor și sunt în proces de construire a mai multor funcționalități pentru a ajuta echipele și organizațiile agile să colaboreze cu motto-ul O ECHIPĂ și UN OBIECTIV.
=> Puteți explorați mai multe despre acest instrument aici
Nu ezitați să întrebați dacă aveți întrebări și, de asemenea, să ne împărtășiți părerile în secțiunea de comentarii, deoarece ne-ar plăcea să știm ce provocări vă confruntați cu automatizarea și cum ați reușit să le rezolvați.
Lectură recomandată
- Cum se execută executarea pe scară largă a testelor Appium în paralel
- Integrați-vă în IDE-ul dvs. pentru a rula testele Appium
- Creați teste Appium pentru o aplicație Android
- Rularea testelor Appium în paralel utilizând Appium Studio pentru Eclipse
- Crearea testelor de epocă folosind epochs Studio for Eclipse
- Testarea unităților de scriere cu Spock Framework
- Raportare Specflow: Cum se generează rapoarte de testare și se execută teste selective
- Implementarea Java: crearea și executarea fișierului Java JAR