testim io tutorial speed up authoring
En aquest tutorial pràctic, aprendreu a construir proves estables en qüestió de minuts amb l'eina d'automatització Testim i a utilitzar el procés d'aprenentatge automàtic per accelerar la creació, l'execució i el manteniment de proves automatitzades.
Quan escoltem la frase 'Eina d'automatització', les principals consideracions que ens vénen al cap respecte a les nostres proves són:
com utilitzar assert en selenium webdriver
- Autorització i execució
- Estabilitat
- Reutilització
- Extensibilitat
- Manteniment
- Resolució de problemes
- Informes
- Integració CI / CD
Hi ha moltes eines al mercat que aborden un o pocs dels factors anteriors, però no tots. Aquí és on entra Testim.io.
Testim.io no és una eina, sinó una plataforma que inclou gairebé tots els factors principals com la creació i execució, manteniment, resolució de problemes, informes, etc., de proves automatitzades. Amb la introducció del concepte de localitzadors dinàmics, centren més tipus de proves, com ara proves funcionals, proves de punta a punta i proves de la interfície d’usuari.
Augmenta l’extensibilitat i l’estabilitat de les vostres proves. I també proporciona als equips i a les organitzacions la flexibilitat per ampliar les funcionalitats de la plataforma mitjançant una lògica de programació complexa amb JavaScript i HTML.
Aquí teniu una informació detallada sobre Testim.io i com ajuda a superar alguns dels reptes als quals s’enfronten els clients durant l’automatització.
Què aprendreu:
- En què es diferencia aquesta eina d'altres eines?
- Testim.io és una plataforma i NO és una eina de registre ni de reproducció
- Abordatge dels factors clau
- Conclusió
- Lectura recomanada
En què es diferencia aquesta eina d'altres eines?
Per entendre com Testim es diferencia de les altres eines, fem un pas enrere en l'evolució de les eines d'automatització durant l'última dècada.
En els darrers deu anys, hi ha hagut diverses eines de proveïdor i eines de codi obert que han intentat solucionar els diversos problemes relacionats amb les proves automatitzades. Però, un dels principals problemes que ningú no ha abordat fins ara és l’ús d’identificadors estàtics.
Per exemple , diguem que un desenvolupador canvia el nom de l'identificador o algun atribut d'un element de la pàgina web. Les proves automatitzades es trenquen immediatament a causa d’aquest canvi, ja que encara fa referència al nom d’identificació antic. Això condueix a proves inestables i els verificadors han de dedicar molt de temps a mantenir-les.
Van introduir el concepte de Localitzadors dinàmics . La Intel·ligència Artificial (IA) situada sota la plataforma en temps real, analitza tots els objectes DOM d’una pàgina i n’extreu els objectes i les seves propietats.
Finalment, la IA decideix la millor estratègia d'ubicació per localitzar un element concret en funció d'aquesta anàlisi.
A causa d'això, fins i tot si un desenvolupador canvia l'atribut d'un element, la prova continua executant-se i això condueix a proves més estables. Com a resultat d'això, la creació i l'execució de proves automatitzades són molt més ràpides i estables.
Testim.io és una plataforma i NO és una eina de registre ni de reproducció
En primer lloc, això no és una eina, sinó una plataforma.
Té funcions robustes que no només ajuden a automatitzar les proves, sinó que també s’encarrega dels altres aspectes importants de les proves, com ara executar-les localment i al núvol (la seva xarxa privada o la xarxa de tercers), integrant-se amb CI / CD sistemes, captura de registres i captures de pantalla de proves de proves, proporcionant informes detallats de les proves de proves amb gràfics, estadístiques i altra informació relacionada.
I, finalment, fer que la captura i la notificació d’errors sigui molt senzilla mitjançant la integració amb les eines de seguiment d’errors àmpliament utilitzades.
En segon lloc, proporciona a les organitzacions i als equips la flexibilitat per construir els seus propis embolcalls al voltant de la plataforma mitjançant l'ús de lògica de programació complexa amb JavaScript i HTML. D’aquesta manera, tothom pot ampliar la funcionalitat de la plataforma.
Finalment, la plataforma s'alinea amb el fitxer Paradigma Maj-esquerra on els desenvolupadors i els verificadors poden començar a escriure les proves des del principi treballant en diferents branques sense sobreescriure els canvis dels altres. També ajuda els equips a col·laborar i proporciona la flexibilitat perquè qualsevol pugui escriure proves automatitzades mitjançant les seves funcionalitats integrades.
D’aquesta manera, fins i tot un membre de l’equip no tècnic pot fer aportacions valuoses a les proves automàtiques. La plataforma ajuda a inculcar el concepte que, les proves automatitzades han de ser senzilles, efectives, estables i col·laboratives.
Abordatge dels factors clau
Com aborda Testim els factors clau que són vitals per a les proves automatitzades?
Autorització i execució
Les proves automatitzades han de ser fàcils de crear i executar des de qualsevol lloc i en qualsevol moment.
Testim ajuda a fer-ho de les maneres següents:
1) Creació d’una prova
Creem una prova nova fent clic a 'Crea nova' o 'Prova nova' .
2) Gravació i reproducció d'una prova
Un cop fem clic al botó 'Grava' botó, podem enregistrar diferents accions dels usuaris a la nostra aplicació.
Després de gravar les diferents accions, feu clic a 'Atura la gravació' per acabar de gravar les nostres proves. Utilitzar el 'Jugar' per reproduir la prova gravada i el botó 'Desa' per desar les proves.
3) Validacions i afirmacions
Aquesta plataforma ajuda a fer la validació de diferents atributs d’un element i de les API realment simples.
Diverses opcions per als usuaris, com ara:
- Addició de validacions personalitzades mitjançant JavaScript i HTML
- Validar la visibilitat de l’element
- Valida el text de l’element
- Validació del nivell de píxels
- Validació de nivell API
4) Captures de pantalla
Mentre es registra cada prova, la plataforma fa una captura de pantalla de tots els resultats aprovats i fallits de cada pas. Com a resultat, als usuaris els és més fàcil solucionar els problemes i entendre què passa sota el capó.
Per exemple , A la captura de pantalla següent, notarem que els atributs del fitxer 'Selecciona destinació' han canviat, però la prova encara s'ha executat perquè s'ha utilitzat l'eina AI Localitzadors dinàmics . A més, la funcionalitat del sistema no va canviar, sinó només l'atribut d'un element.
També obtenim la captura de pantalla del que va passar exactament mentre executàvem la prova, mostrant la imatge esperada (línia de base) i la imatge real.
(Nota:Feu clic a la imatge següent per obtenir una vista ampliada)
5) Comentaris sobre cada pas
L'usuari també rep els comentaris sobre cada pas pel que fa a si les proves han superat o han fallat en mostrar un 'Verd' o bé 'Icona vermella' a la part superior esquerra de cada pas, tal com es mostra a continuació:
6) Proves d’etiquetatge
Testim proporciona la funció per etiquetar totes i cadascuna de les proves que crea un usuari.
Hi ha dos motius pels quals és possible que vulguem etiquetar una prova:
- Ajuda a identificar el motiu pel qual es va crear la prova en primer lloc.
- Ajuda a executar les proves amb la mateixa etiqueta alhora mitjançant la funció CLI.
La manera de crear etiquetes és fent clic al botó 'Etiqueta' i seleccioneu una etiqueta existent o bé creeu-ne una de nova.
7) Documentació de l'usuari
Proporcionen als usuaris tota la documentació necessària per utilitzar les diferents funcions d’aquesta plataforma.
La majoria de les respostes sobre l’ús d’aquesta plataforma es poden trobar fent clic a 'Educar' i visitant el lloc de documentació com es mostra a continuació:
Degut als motius anteriors, Testim.io ajuda a fer que la creació i l'execució de proves siguin molt ràpides i senzilles. En qüestió de segons, un usuari pot gravar, reproduir i desar les proves.
Estabilitat
Proves d'usos Localitzadors dinàmics en lloc dels identificadors estàtics. A causa d’això, les proves són més estables i com més les fem, més intel·ligent es converteix en IA per garantir més estabilitat a les proves automatitzades.
Un usuari podrà veure les diferents estratègies d'ubicació que utilitza la seva intel·ligència artificial per localitzar un element a l'IDE, mitjançant el Tauler de propietats , per a cada element que interactuem mitjançant les nostres proves automatitzades.
Com podem observar, la IA analitza tots els objectes DOM, els llista al tauler de propietats juntament amb els rànquings de totes i cadascuna de les estratègies d'ubicació per a aquest element en particular. D'aquesta manera, fins i tot si canvia l'atribut d'un element, l'IA pot utilitzar una estratègia d'ubicació diferent de la llista ja analitzada d'objectes DOM.
Per tant, l’usuari no s’ha de preocupar de les proves escamoses.
Reutilització
Una de les bones pràctiques d’escriure proves automatitzades és crear components reutilitzables que es puguin utilitzar en diferents parts del nostre conjunt de proves.
Per què és important?
La creació de components reutilitzables és important perquè:
- Ajuda a augmentar la llegibilitat de les proves automatitzades.
- Estalvia esforços en no repetir el mateix conjunt de passos en diferents parts de les proves.
- Qualsevol canvi al pas reutilitzable s’ha de fer només en un lloc i es reflecteix al llarg de les proves, en diferents projectes.
- Fa que les proves automatitzades siguin més extensibles.
Testim ajuda a garantir la reutilització per 'Agrupació' i 'Parameterització'.
1) Agrupació
Es poden agrupar qualsevol nombre de passos relacionats en un component reutilitzable.
Per exemple - El 'Iniciar Sessió' l'escenari és un dels passos més utilitzats en qualsevol aplicació. La manera com podem crear un pas reutilitzable d ''Inici de sessió' seria seleccionar els passos que volem agrupar i, a continuació, fer clic a 'Afegeix un grup nou' com es mostra a continuació:
2) Parameterització
Aquesta plataforma ofereix l'opció de provar l'aplicació mitjançant diverses combinacions d'entrada mitjançant la parametrització.
Això es pot aconseguir de diverses maneres.
Una manera de fer-ho és proporcionar tots els paràmetres d’entrada que necessitaríem per provar l’aplicació en forma de fitxer JSON al pas Configuració (primer pas de les nostres proves), tal com es mostra a continuació:
Extensibilitat
Aquesta eina proporciona a les organitzacions la flexibilitat d’estendre les funcionalitats d’aquesta plataforma mitjançant JavaScript i HTML. D'aquesta manera, en qualsevol funcionalitat que aquesta plataforma no gestioni, l'usuari pot escriure el seu propi codi per construir un marc d'automatització robust
Per exemple - Diguem que volem validar el fitxer 'Selecciona destinació' botó dels nostres exemples anteriors.
La manera de fer-ho seria.
- Fer clic a 'Afegeix una acció personalitzada'.
- Poseu un nom al nou pas i feu clic a 'Confirma'.
- Feu clic a 'PARAMS' i seleccioneu 'HTML' per a aquest exemple.
- Afegiu un codi personalitzat.
- El nou pas amb Codi personalitzat s'afegeix a la llista de passos ja existents.
Manteniment
Un dels factors més importants relacionats amb les proves automatitzades és “ Manteniment '.
Es dedica molt a mantenir les proves que a escriure les proves reals. Això comporta una pèrdua d’esforços i temps valuosos per part dels recursos que podrien haver dedicat aquest temps a provar l’aplicació real.
Testim ajuda a minimitzar l'esforç necessari per mantenir les proves automatitzades de les maneres següents:
1) Control de versions
En qualsevol moment, és important tenir els registres dels canvis que es van fer en una prova concreta. D'aquesta manera, sempre podem tornar a la versió anterior d'una prova quan i quan sigui necessari. Aquesta plataforma proporciona aquesta funcionalitat mostrant tot l'historial de versions anant al tauler Propietats del pas de configuració i fent clic a 'Veure revisions antigues' .
2) Ramificació
Al ' Shift Paradigma esquerra ”On tant el desenvolupament com les proves han de començar en paral·lel el més aviat possible en el cicle de vida del desenvolupament de programari.
Tenint en compte això, proporcionen la funcionalitat als equips per crear sucursals separades per a cada membre de l’equip i treballar en els mateixos projectes i proves. D’aquesta manera, ningú no pot sobreescriure els canvis dels altres membres de l’equip i els equips poden treballar en la mateixa base de codi en qualsevol moment.
Només cal que seleccioneu 'Forquilla' per crear una nova branca i també podeu canviar entre branques existents.
Els usuaris tenen l’opció de programar les proves. Això ajuda a executar les proves automàticament un dia i una hora determinats sense cap intervenció manual. També podem rebre notificacions per correu electrònic en cas d’errors.
Resolució de problemes
Com a provadors, dediquem una quantitat considerable de temps a resoldre els problemes. Per ajudar a la resolució de problemes, aquesta plataforma ofereix diferents opcions als usuaris per reduir l'abast del problema.
Aquestes opcions inclouen:
1) Captures de pantalla
La funció de captura de pantalla explicada a la secció 'Creació i execució' ajuda els usuaris a saber quina era la imatge de referència i quina és la imatge real trobada.
2) Tauler de propietats
El tauler de propietats ajuda a captar els missatges d'error i mostrar-los a l'usuari.
Per exemple, Quan un element no és visible i la prova falla, rebem el següent missatge d'error al tauler.
3) Registres de prova
Els registres són una rica font d'informació sobre el que va passar sota la IU. L'eina proporciona registres de proves quan l'usuari executa les proves a la nostra graella o a una graella de tercers. L'opció es troba al tauler de propietats del pas de configuració.
4) Documentació
Testim va fer un gran esforç per documentar la majoria de les funcions de l'eina a la documentació d'usuari que es troba a la secció 'Educar' fitxa.
Informes
Aquest és un dels aspectes més importants de les vostres proves per obtenir visibilitat sobre quines proves es van executar, superades, fallades, la durada de l'execució, quines combinacions de navegadors, etc.
Testim.io proporciona 2 tipus de funcions d'informes:
1) Informes de les sèries i les proves
Quan els usuaris fan clic a l'opció 'Executa' al menú lateral, poden veure tota la suite i les proves amb totes les dades necessàries, tal com es mostra a continuació. Això ajuda a obtenir visibilitat en les proves i ajuda a facilitar els informes.
2) Informar d'errors
Dediquem una quantitat considerable de temps al dia informant d’errors. Aquesta és una de les parts més crítiques i que consumeixen molt de temps de les proves.
Testim.io ajuda a reduir el temps d’informació d’errors i augmenta la productivitat donant una extensió cromada per capturar i informar ràpidament dels errors. Amb aquesta extensió podem capturar captures de pantalla, vídeos de l’error i gravar una prova automatitzada real. S'integra amb la majoria dels sistemes de seguiment d'errors àmpliament utilitzats.
Després de capturar el defecte i fer clic a 'Publica', omple automàticament tots els passos necessaris a la descripció d'errors. També afegeix la captura de pantalla, el vídeo i les proves automatitzades amb el defecte.
(Nota:Feu clic a la imatge següent per obtenir una vista ampliada)
Integració CI / CD
Aquesta eina s'integra amb diferents sistemes CI / CD com Jenkins, Travis CI, Circle CI i altres eines de construcció. També s’integra amb quadrícules de tercers que allotgen el seu propi núvol privat per executar proves. Tot això es fa a través de la CLI (Command Line Interface) que proporcionem a la plataforma.
Fent clic al botó 'Configuració' la icona del menú lateral obre la CLI.
Es completa amb les ordres que necessiten per executar les proves en sistemes CI / CD, xarxes de tercers o les seves xarxes. Només hem de fer clic a 'Copia' i, literalment, enganxeu l'ordre a qualsevol eina de construcció o quadrícula que utilitzi l'organització.
La CLI també accepta els altres paràmetres per executar proves específiques, per executar proves en paral·lel, per anul·lar l'URL base i moltes més funcionalitats.
=> Tots els paràmetres que es poden utilitzar es mostren aquí a aquesta guia de l'usuari .
Conclusió
En poques paraules, la plataforma Testim.io ajuda a superar alguns dels principals reptes amb l’automatització tal com es descriu a les seccions anteriors. Amb això, podeu fer que l’automatització sigui més senzilla i estable.
Aquesta plataforma us ajudarà:
- Membres de l'equip no tècnic per involucrar-se en l'automatització i escriure proves sòlides.
- Els membres de l’equip tècnic utilitzen una lògica de programació complexa per ampliar les funcionalitats d’aquesta plataforma.
- L'autorització i l'execució de proves són molt ràpides.
- Les proves són més estables amb l'ús de 'Localitzadors dinàmics' .
En general, és una plataforma que ajuda en diverses facetes de l'automatització de proves i que estan en procés de construir més funcionalitats per ajudar els equips i les organitzacions àgils a col·laborar amb el lema de UN EQUIP i UN GOL.
=> Podeu exploreu més sobre aquesta eina aquí
No dubteu a preguntar-vos si teniu cap dubte i també compartiu els vostres pensaments a la secció de comentaris, ja que ens encantaria saber quins reptes teniu davant l’automatització i com heu aconseguit solucionar-los.
Lectura recomanada
- Com executar l'execució a gran escala de proves Appium en paral·lel
- Integreu-vos al vostre IDE per executar les proves d’Appium
- Creeu proves Appium per a una aplicació d'Android
- Execució de les proves d'Appium en paral·lel mitjançant Appium Studio per a Eclipse
- Creació de proves d’època mitjançant epochs Studio for Eclipse
- Proves d’unitat d’escriptura amb Spock Framework
- Informes de flux de dades: com generar informes de proves i executar proves selectives
- Desplegament de Java: creació i execució del fitxer JAR de Java