testim io tutorial speed up authoring
U ovom praktičnom vodiču naučit ćete kako za nekoliko minuta izgraditi stabilne testove pomoću alata za automatizaciju Testim i koristiti postupak strojnog učenja za ubrzanje autoriziranja, izvršavanja i održavanja automatiziranih testova.
Kad čujemo frazu 'Automation Tool', glavna razmatranja koja nam padaju na pamet u vezi s našim testovima uključuju:
kako stvoriti java datoteku u eclipseu
- Autorstvo i izvršenje
- Stabilnost
- Ponovna upotrebljivost
- Proširivost
- Održavanje
- Rješavanje problema
- Izvještavanje
- CI / CD integracija
Na tržištu postoji mnogo alata koji se bave jednim ili nekoliko gore navedenih čimbenika, ali ne svim. Tu Testim.io dolazi na scenu.
Testim.io nije alat već platforma koja uključuje gotovo sve glavne čimbenike kao što su izrada i izvršavanje, održavanje, rješavanje problema, izvještavanje itd., automatiziranih testova. Uvođenjem koncepta dinamičkih lokatora usredotočuju se na nekoliko vrsta ispitivanja poput funkcionalnog testiranja, testiranja od kraja do kraja i testiranja korisničkog sučelja.
Povećava rastezljivost i stabilnost vaših testnih apartmana. Također daje timovima i organizacijama fleksibilnost da prošire funkcionalnosti platforme koristeći složenu programsku logiku s JavaScriptom i HTML-om.
Evo detaljnog uvida u Testim.io i kako pomaže u prevladavanju nekih izazova s kojima se kupci suočavaju tijekom automatizacije.
Što ćete naučiti:
- Po čemu se ovaj alat razlikuje od ostalih alata?
- Testim.io je platforma, a NIJE zapis niti alat za reprodukciju
- Rješavanje ključnih čimbenika
- Zaključak
- Preporučena literatura
Po čemu se ovaj alat razlikuje od ostalih alata?
Da bismo shvatili kako se Testim razlikuje od ostalih alata, vratimo se korak unatrag prema razvoju alata za automatizaciju u posljednjem desetljeću.
U posljednjih 10 godina bilo je nekoliko alata dobavljača i alata otvorenog koda koji su pokušali riješiti razne probleme povezane s automatiziranim testiranjem. Ali, jedan je glavni problem kojem se nitko do sada nije bavio upotreba statičkih ID-ova.
Na primjer , recimo da programer promijeni ID ime ili neki atribut elementa na web stranici. Automatizirani testovi odmah se prekidaju zbog ove promjene, jer se i dalje odnosi na staro ime ID-a. To dovodi do nestabilnih testova i ispitivači moraju potrošiti puno vremena na njihovo održavanje.
Uveli su koncept Dinamički lokatori . Umjetna inteligencija (AI) ispod platforme u stvarnom vremenu analizira sve DOM objekte stranice i izdvaja objekte i njegova svojstva.
Konačno, AI na temelju ove analize odlučuje najbolju strategiju lokacije za lociranje određenog elementa.
Zbog toga, čak i ako programer promijeni atribut elementa, test se i dalje nastavlja izvoditi, što dovodi do stabilnijih testova. Kao rezultat toga, autoriziranje i izvršavanje automatiziranih testova su puno brži i stabilniji.
Testim.io je platforma, a NIJE zapis niti alat za reprodukciju
Prije svega, ovo nije alat već platforma.
Ima robusne značajke koje ne samo da pomažu automatizirati vaše testove već se brine i o ostalim važnim aspektima vaših testova, poput izvođenja testova lokalno i u oblaku (njihova privatna mreža ili mreža treće strane), integrirajući se s CI / CD-om sustavi, hvatanje dnevnika i snimki zaslona testnih vožnji, dajući detaljno izvještavanje o testnim vožnjama s grafikonima, statistikama i ostalim povezanim informacijama.
I na kraju, pojednostavljivanje hvatanja i prijavljivanja bugova integriranjem s široko korištenim alatima za praćenje bugova.
Kao drugo, organizacijama i timovima daje fleksibilnost da grade vlastite omote oko platforme koristeći složenu programsku logiku s JavaScriptom i HTML-om. Na taj način svatko može proširiti funkcionalnost platforme.
Napokon, platforma se poravnava s Shift-Left paradigma gdje programeri i testeri mogu početi pisati testove od samog početka radeći na različitim granama bez prepisivanja međusobnih promjena. Također pomaže timovima u suradnji i daje fleksibilnost svima da pišu automatizirane testove putem svojih ugrađenih funkcionalnosti.
Na taj način čak i netehnički član tima može dragocjeno doprinijeti vašim automatiziranim testovima. Platforma pomaže usaditi koncept koji, automatizirani testovi trebali bi biti jednostavni, učinkoviti, stabilni i suradnički.
Rješavanje ključnih čimbenika
Kako se Testim obraća ključnim čimbenicima koji su vitalni za automatizirane testove?
Autorstvo i izvršenje
Automatizirani testovi moraju biti jednostavni za izradu i izvršavanje s bilo kojeg mjesta i u bilo koje vrijeme.
Testim to pomaže na sljedeće načine:
1) Izrada testa
Stvaramo novi Test klikom na 'Stvori novo' ili 'Novi test' .
2) Snimanje i reprodukcija testa
Jednom kad kliknemo 'Snimiti' gumba, u našu aplikaciju možemo bilježiti različite radnje korisnika.
Nakon snimanja različitih radnji, kliknite na 'Zaustavi snimanje' gumb za završetak snimanja naših testova. Koristiti 'Igra' gumb za ponovnu reprodukciju snimljenog testa i 'Uštedjeti' gumb za spremanje testova.
3) Provjere i tvrdnje
Ova platforma pomaže u provjeri valjanosti različitih atributa elementa i zaista jednostavnih API-ja.
Razne opcije za korisnike kao što su:
- Dodavanje prilagođenih provjera valjanosti pomoću JavaScript-a i HTML-a
- Potvrdite vidljivost elementa
- Potvrdite tekst elementa
- Provjera razine piksela
- Provjera razine API-ja
4) Snimke zaslona
Dok se snima svaki test, platforma snima snimku zaslona svih rezultata Pass i Failed svakog koraka. Kao rezultat toga, korisnicima je lakše riješiti probleme i razumjeti što se događa ispod haube.
Na primjer , Na donjoj snimci zaslona primijetit ćemo da atributi 'Odaberite odredište' tipke su se promijenile, ali test je i dalje pokrenut jer se koristio alat AI Dinamički lokatori . Također, funkcionalnost sustava se nije promijenila već samo atribut elementa.
Također dobivamo snimku zaslona što se točno dogodilo tijekom izvođenja testa prikazivanjem očekivane slike (osnovna crta) i stvarne slike.
(Bilješka:Kliknite na donju sliku za uvećani prikaz)
5) Povratne informacije o svakom koraku
Korisnik također dobiva povratne informacije o svakom koraku u smislu jesu li testovi prošli ili nisu uspjeli prikazivanjem a 'Zeleno' ili 'Crvena ikona' u gornjem lijevom dijelu svakog koraka kao što je prikazano dolje:
6) Ispitivanja označavanja
Testim nudi značajku za označavanje svakog testa koji korisnik stvori.
Postoje dva razloga zbog kojih bismo mogli označiti test:
- Pomaže u prepoznavanju razloga zbog kojeg je test uopće stvoren.
- Pomaže u izvođenju testova s istom oznakom odjednom kroz CLI značajku.
Način na koji izrađujemo oznake je klikom na 'Označiti' gumb ili odaberite postojeću naljepnicu ili stvorite novu.
7) Korisnička dokumentacija
Korisnicima pružaju svu dokumentaciju koja će im trebati za korištenje različitih značajki ove platforme.
Većinu odgovora o korištenju ove platforme možete pronaći klikom na 'Odgajati' kartici i posjetom mjestu dokumentacije kao što je prikazano u nastavku:
Zbog gore navedenih razloga Testim.io pomaže autoriziranju i izvršavanju testova doista brzo i jednostavno. U roku od nekoliko sekundi korisnik može snimiti, ponoviti i spremiti testove.
Stabilnost
Upotrebe za testiranje Dinamički lokatori umjesto statičkih ID-ova. Zbog toga su testovi stabilniji i što više pokrećemo testove, inteligencija postaje pametnija u osiguravanju veće stabilnosti automatiziranih testova.
Korisnik će moći vidjeti različitu strategiju lokacije koju njegov AI koristi za lociranje elementa u IDE-u kroz Panel svojstava , za svaki element koji komuniciramo putem naših automatiziranih testova.
Kao što možemo primijetiti, AI raščlanjuje sve DOM objekte, navodi ih na ploči svojstava, zajedno s poretkom svake strategije lokacije za taj određeni element. Na taj način, čak i ako se atribut elementa promijeni, tada AI može koristiti drugačiju strategiju lokacije od već raščlanjenog popisa DOM objekata.
Dakle, korisnik se ne mora brinuti zbog neukusnih testova.
Ponovna upotrebljivost
Jedna od dobrih praksi pisanja automatiziranih testova je stvaranje komponenata za ponovnu upotrebu koje se mogu koristiti u različitim dijelovima našeg paketa za testiranje.
Zašto je ovo važno?
Stvaranje komponenata za višekratnu upotrebu važno je jer:
- Pomaže u povećanju čitljivosti automatiziranih testova.
- Štedi napor neponavljanjem istog niza koraka u različitim dijelovima testova.
- Sve promjene na koraku za ponovnu upotrebu moraju se izvršiti samo na jednom mjestu i to se odražava kroz testove, u različitim projektima.
- Automatizirane testove čini proširivima.
Testim pomaže osigurati ponovnu upotrebu do „Grupiranje“ i „Parametriranje“.
1) Grupiranje
Bilo koji broj povezanih koraka može se grupirati u jednu komponentu za višekratnu upotrebu.
Na primjer - The 'Prijaviti se' Scenarij je jedan od najčešće korištenih koraka u bilo kojoj aplikaciji. Način na koji možemo stvoriti ponovni korak 'Prijava' bio bi odabir koraka koje želimo grupirati, a zatim kliknuti na “Dodaj novu grupu” kako je prikazano dolje:
2) Parametriranje
Ova platforma daje mogućnost testiranja aplikacije putem različitih kombinacija unosa putem parametrizacije.
To se može postići na razne načine.
Jedan od načina da to učinimo je davanje svih ulaznih parametara koji su nam potrebni za testiranje aplikacije u obliku JSON datoteke u koraku postavljanja (prvi korak naših testova) kao što je prikazano u nastavku:
Proširivost
Ovaj alat omogućuje organizacijama fleksibilnost da prošire funkcionalnosti ove platforme pomoću JavaScript-a i HTML-a. Na taj način, u bilo kojoj funkcionalnosti koju ova platforma ne obrađuje, korisnik može napisati vlastiti kôd za izgradnju robusnog okvira za automatizaciju
Na primjer - Recimo da želimo potvrditi 'Odaberite odredište' gumb iz naših prethodnih primjera.
Način da se to učini bio bi.
- Kliknite na 'Dodaj prilagođenu radnju'.
- Dajte ime Novom koraku i kliknite na 'Potvrdi'.
- Kliknite 'PARAMS' i odaberite 'HTML' za ovaj primjer.
- Dodajte prilagođeni kod.
- Novi korak s Prilagođeni kod se dodaje na popis već postojećih koraka.
Održavanje
Jedan od najvažnijih čimbenika povezanih s automatiziranim testovima je „ Održavanje '.
Puno truda troši se na održavanje testova nego na pisanje stvarnih testova. To dovodi do gubljenja dragocjenog truda i vremena od resursa koji su to vrijeme mogli potrošiti na testiranje stvarne aplikacije.
Testim pomaže umanjiti napor potreban za održavanje automatiziranih testova na sljedeće načine:
1) Kontrola verzija
U bilo kojem trenutku važno je imati zapisnike o promjenama koje su izvršene na određenom testu. Na taj se način uvijek možemo vratiti na stariju verziju testa prema potrebi. Ova platforma pruža ovu funkcionalnost prikazivanjem sve povijesti verzija odlaskom na ploču Svojstva u koraku postavljanja i klikom na 'Pogledajte stare revizije' .
2) Grananje
U Shift lijeva paradigma ”Gdje i razvoj i testiranje moraju započeti paralelno što je prije moguće u životnom ciklusu razvoja softvera.
Imajući ovo na umu, oni pružaju timovima funkcionalnost za stvaranje zasebnih grana za svakog člana tima i rad na istim projektima i testovima. Na taj način nitko ne može prebrisati promjene ostalih članova tima, a timovi mogu raditi na istoj bazi koda u bilo kojem trenutku.
Samo trebate odabrati 'Vilica' za stvaranje nove grane, a također se možete prebacivati između postojećih grana.
Korisnici imaju mogućnost zakazivanja svojih testova. To pomaže automatskom pokretanju testova određenog dana i vremena bez ikakvih ručnih intervencija. Također možemo dobiti obavijest putem e-pošte u slučaju bilo kakvih pogrešaka.
Rješavanje problema
Kao testeri, trošimo poprilično vremena na rješavanje problema. Da bi pomogla u rješavanju problema, ova platforma korisnicima nudi različite mogućnosti sužavanja opsega problema.
Te mogućnosti uključuju:
1) Snimke zaslona
Značajka snimka zaslona objašnjena u odjeljku 'Autorizacija i izvršenje' pomaže korisnicima da znaju koja je bila osnovna slika i koja je stvarna pronađena slika.
2) Panel svojstava
Ploča svojstava pomaže u hvatanju poruka o pogreškama i prikazivanju korisniku.
Na primjer, Kada element nije vidljiv i test ne uspije, na ploči ćemo dobiti donju poruku o pogrešci.
3) Ispitni dnevnici
Zapisnici su bogat izvor informacija o tome što se dogodilo ispod korisničkog sučelja. Alat pruža zapisnike testa kada korisnik izvrši testove na našoj mreži ili mreži treće strane. Opciju možete pronaći na ploči svojstava u koraku postavljanja.
4) Dokumentacija
Testim je uložio puno truda kako bi dokumentirao većinu značajki alata u Korisničkoj dokumentaciji koja se nalazi pod 'Odgajati' tab.
Izvještavanje
Ovo je jedan od najvažnijih aspekata vaših testova kako biste dobili uvid u to koji su testovi izvršeni, položeni, neuspjeli, trajanje izvođenja, koje kombinacije preglednika i tako dalje.
Testim.io nudi 2 vrste značajke Izvješćivanje:
1) Izvještavanje o testiranju i testiranju
Kada korisnici kliknu na opciju 'Runs' u bočnom izborniku, mogu vidjeti sav paket i probne vožnje sa svim potrebnim detaljima kao što je prikazano u nastavku. To pomaže u vidljivosti testnih vožnji i olakšava izvještavanje.
2) Prijavljivanje bugova
Dnevno provodimo znatnu količinu vremena prijavljujući greške. Ovo je jedan od najkritičnijih i dugotrajnih dijelova testiranja.
Testim.io pomaže smanjiti vrijeme prijavljivanja grešaka i povećati produktivnost davanjem kromiranog proširenja za brzo hvatanje i prijavljivanje grešaka. S ovim proširenjem možemo snimiti snimke zaslona, videozapise greške i snimiti stvarni automatizirani test. Integrira se s većinom široko korištenih sustava za praćenje grešaka.
Nakon hvatanja kvara i klika na 'Objaviti', automatski popunjava sve potrebne korake u Opisu greške. Također dodaje snimku zaslona, videozapis i automatizirane testove s nedostatkom.
(Bilješka:Kliknite na donju sliku za uvećani prikaz)
CI / CD integracija
Ovaj se alat integrira s različitim CI / CD sustavima kao što su Jenkins, Travis CI, Circle CI i drugi alati za izgradnju. Također se integrira s mrežama trećih strana koje hostiraju vlastiti privatni oblak za pokretanje testova. Sve se to radi putem CLI-ja (sučelja naredbenog retka) koji pružamo na platformi.
Klikom na 'Postavke' ikona na bočnom izborniku otvara CLI.
Unaprijed se popunjava naredbama koje trebaju pokrenuti testove na CI / CD sustavima, mrežama trećih strana ili njihovim mrežama. Samo moramo kliknuti 'Kopirati' i doslovno zalijepite naredbu u bilo koji alat za izgradnju ili mrežu koju organizacija koristi.
CLI također prihvaća ostale parametre za pokretanje određenih testova, paralelno pokretanje testova, nadjačavanje osnovnog URL-a i puno više funkcionalnosti.
=> Svi parametri koji se mogu koristiti ovdje su navedeni u ovaj korisnički priručnik .
Zaključak
Ukratko, platforma Testim.io pomaže prevladati neke od glavnih izazova s automatizacijom kako je opisano u gornjim odjeljcima. Ovim možete automatizaciju učiniti jednostavnijom i stabilnijom.
Ova platforma će vam pomoći:
- Netehnički članovi tima koji se uključuju u automatizaciju i pišu solidne testove.
- Članovi tehničkog tima koriste složenu programsku logiku kako bi proširili funkcionalnosti ove platforme.
- Izrada i izvršavanje testova su vrlo brzi.
- Ispitivanja su stabilnija uz upotrebu 'Dinamički lokatori' .
Sve u svemu, to je platforma koja pomaže u različitim aspektima automatizacije ispitivanja i oni su u procesu izgradnje više funkcionalnosti koje će pomoći okretnim timovima i organizacijama da surađuju s motom JEDAN TIM I JEDAN CILJ.
=> Možete istražite više o ovom alatu ovdje
Slobodno pitajte imate li pitanja, a također podijelite svoja razmišljanja u odjeljku za komentare jer bismo voljeli znati s kojim se izazovima susrećete u automatizaciji i kako ste ih uspjeli riješiti.
Preporučena literatura
- Kako paralelno pokrenuti veliko izvršavanje testova Appium
- Integrirajte se u svoj IDE za pokretanje testova Appium
- Stvorite Appium testove za Android aplikaciju
- Izvođenje paralelnih testova Appiuma pomoću Appium Studija za Eclipse
- Stvaranje testova epoha pomoću epochs Studio za Eclipse
- Pisanje jedinstvenih testova sa Spock Frameworkom
- Izvještavanje o spektluku: Kako generirati izvještaje o ispitivanju i izvršiti selektivne testove
- Implementacija Jave: Izrada i izvršavanje Java JAR datoteke