devops testing tutorial
Tutorial de proves DevOps: Una enquesta recent de RightScale ha demostrat que el 54% de les empreses han adoptat DevOps i l'interès al voltant de DevOps augmenta ràpidament.
En aquest article, aprendrem com aquesta nova metodologia de desenvolupament de programari afectarà la QA i com hauria d’evolucionar la funció de QA en general per abraçar aquest canvi.
Consulteu => Sèrie completa de tutorials DevOps
En aquest article, aprendrem més sobre DevOps i com afectarà el control de qualitat i les seves funcions.
Què aprendreu:
Què és DevOps?
DevOps: és una combinació de Devfugida iEncèseracions - és una metodologia de desenvolupament de programari que busca integrar totes les funcions de desenvolupament de programari, des del desenvolupament fins a les operacions dins del mateix cicle.
Això requereix un major nivell de coordinació entre els diferents grups d'interès en el procés de desenvolupament de programari (és a dir, Desenvolupament, control de qualitat i operacions )
Cicle DevOps
Un cicle DevOps ideal començaria des de:
- El codi d’escriptura de Dev
- Creació i desplegament de fitxers binaris en un entorn de control de qualitat
- Executant casos de proves i finalment
- Desplegament a Production en un flux integrat i suau.
Viouslybviament, aquest enfocament posa un gran èmfasi en l’automatització de la compilació, el desplegament i les proves. L’ús d’eines d’integració contínua (CI), les eines de proves d’automatització es converteixen en una norma a DevOps cicle.
Per què DevOps?
Tot i que hi ha subtils diferències entre Proves Agile i DevOps , aquells que treballen amb Agile trobaran DevOps una mica més familiar per treballar (i finalment adoptar). Tot i que els principis àgils s’apliquen amb èxit en les iteracions de desenvolupament i control de qualitat, és una història totalment diferent (i sovint un os de controvèrsia) pel que fa a les operacions. DevOps proposa corregir aquest buit.
Ara, en lloc de la integració contínua, DevOps implica 'desenvolupament continu' , on es va escriure el codi i es va comprometre amb el control de versions, es crearà, es desplegarà, es provarà i s'instal·larà a l'entorn de producció que estarà llest per ser consumit per l'usuari final.
Aquest procés ajuda a tothom a tota la cadena, ja que els entorns i els processos estan estandarditzats. Cada acció de la cadena està automatitzada. També dóna llibertat a totes les parts interessades per concentrar els seus esforços en dissenyar i codificar un producte d'alta qualitat en lloc de preocupar-se pels diferents processos de construcció, operacions i control de qualitat.
Redueix dràsticament el temps de vida a unes 3-4 hores, des que s’escriu i es compromet el codi de temps, fins al desplegament en producció per al consum de l’usuari final.
En poques paraules, DevOps és una extensió d'Agile o m'agrada anomenar-la 'Agile on Steroids'.
S'ha canviat el paper de control de qualitat a DevOps
Tradicionalment, QA obtindria una compilació que es desplegava al seu entorn designat i QA llavors començaria la seva Funcional & Proves de regressió . L’equipament ideal seria amb la QA durant un parell de dies abans del tancament de la QA a la versió. Tots aquests passos canvien a DevOps.
Canvis de control de qualitat per a les proves DevOps:
- Es requereix QA per alinear els seus esforços al cicle DevOps.
- Han d’assegurar-se que tots els casos de prova estan automatitzats i que aconsegueixen una cobertura de codi propera al 100%.
- Han d’assegurar-se que els seus entorns estan estandarditzats i que el desplegament de les seves caixes de control de qualitat està automatitzat.
- Totes les seves tasques de prova prèvia, neteja, tasques post-prova, etc. estan automatitzades i alineades amb el cicle d’integració contínua.
Com ja s'ha esmentat, DevOps requereix un alt nivell de coordinació entre diverses funcions de la cadena de lliurament. Això també significa que els límits entre els diferents rols dels col·laboradors a la cadena es tornen porosos.
DevOps anima a tothom a contribuir a la cadena . Així, entre altres coses, un desenvolupador pot configurar desplegaments. Els enginyers de desplegament poden afegir casos de prova al dipòsit de control de qualitat. Els enginyers de control de qualitat poden configurar els casos de prova d’automatització a la cadena DevOps.
Col·lectivament, tots els membres de la cadena són responsables de la qualitat i puntualitat dels lliuraments.
DevOps i automatització de proves
Per aconseguir aquesta velocitat i agilitat, és important automatitzar tots els processos de prova i configurar-los perquè s’executin automàticament quan es completi el desplegament a l’entorn QA. Per aconseguir aquesta integració s’utilitzen eines de proves d’automatització especialitzades i eines d’integració contínua.
Això també requereix la creació d'un marc de proves d'automatització madur a través del qual es puguin escriure nous casos de prova ràpidament.
Estratègia de proves de DevOps: consells per a l’èxit de DevOps
- Cal identificar els casos de prova que cal executar per a una construcció concreta.
- L'execució de la prova ha de ser bàsicament fluida.
- El QA i el Dev han de seure junts i identificar les àrees afectades a causa d’una construcció concreta i executar els casos de prova relacionats, a més d’una passada de prova de seny.
- També heu de configurar eines especialitzades d’anàlisi i cobertura de codi per assegurar-vos que aconseguiu una cobertura de codi propera al 100%.
- El concepte d’executar tot els casos de proves de regressió per a un examen de prova aviat estan quedant obsolets.
- Cal formalitzar l’estratègia al voltant de provar noves funcions i es poden subministrar les compilacions provisionals a QA, que al seu torn crearia scripts de prova i executaria aquestes proves d’automatització en les compilacions provisionals fins que el codi es converteixi en prou estable com per ser desplegat a l’entorn de producció. .
- Cal estandarditzar tots els entorns necessaris per a les proves i automatitzar els desplegaments.
- Mitjançant diverses tècniques d’automatització, el control de qualitat hauria de ser capaç d’executar proves d’automatització en diversos entorns multiplataforma (i navegador creuat en cas d’aplicacions web).
- L’execució en paral·lel de les proves ajuda a reduir el temps de vida, que al seu torn és l’eix d’una implementació amb èxit de DevOps.
- Cal establir criteris de sortida per a cada tirada, de manera que, quan els resultats de les proves es retroalimentin a la cadena, es prengui una decisió d'anar / no anar a la producció.
- Cal detectar i corregir els errors de bloqueig o crítics i passar-los per la mateixa cadena d’esdeveniments abans que el codi es desplegui a l’entorn de producció.
Monitorització d'aplicacions
El control de qualitat també hauria de ser capaç de detectar els problemes de manera precoç i informar-los de manera proactiva. Per aconseguir-ho, han d’instal·lar un seguiment a l’entorn de producció per poder exposar els errors abans de provocar un error.
La configuració de comptadors especialitzats, com ara els temps de resposta, la memòria i la utilització de la CPU, etc., poden proporcionar una gran informació sobre l’experiència de l’usuari final.
Per exemple , si el temps mitjà de resposta per a l'inici de sessió augmenta gradualment durant les diverses versions, el control de qualitat hauria d'informar proactivament d'aquest problema per optimitzar el codi d'inici de sessió; en cas contrari, les versions futures podrien causar frustració a l'usuari final a causa dels temps de resposta elevats.
QA també pot utilitzar un petit subconjunt de casos de prova d'alta prioritat existents per executar-se periòdicament a la producció, per controlar activament l'entorn. Errors com ara 'Aquest error apareix de vegades' o ' No es pot reproduir ”Es pot atrapar mitjançant aquesta estratègia que, al final, fa que l’aplicació sigui més estable i també obtingui els usuaris finals més satisfets.
Una vegada més, aquests monitors s'han de configurar per executar-se automàticament amb informes complets (com ara registres i captures de pantalla d'errors, etc.).
Conclusió
Waterfall va donar pas al model V, que al seu torn va ser substituït per Agile com a opció preferida per al desenvolupament de programari.
DevOps és el futur. És un cicle de millora contínua que experimenten els models de desenvolupament de programari de tant en tant. Cal abraçar-lo, comprendre’l i inculcar-lo.
Heu de dominar les diverses eines d’automatització i integració contínua perquè els vostres esforços d’automatització afegeixin valor a la cadena i siguin prou prims per adaptar-se ràpidament als canvis. És possible que estigueu treballant en projectes que puguin implicar-vos alfa , beta i UAT entorns abans de desplegar-se a l’entorn de producció.
El concepte continua essencialment el mateix. L’automatització i més automatització són el nucli d’un cicle DevOps reeixit. Però, com a control de qualitat, també hauríeu de ser capaços de traçar una línia quant a l'automatització és massa automatització.
Sobre l'autor: Aniket Deshpande treballa com a gerent de control de qualitat a AFour Technologies , Pune i ha estat treballant en el camp de proves de programari durant els darrers 9 anys en diversos dominis i plataformes. És un apassionat de DevOps i treballa com a consultor per orientar les organitzacions a l’hora d’adoptar estratègies de proves de DevOps.
Si esteu interessats en saber-ne més o voleu implementar DevOps i el Test Approach associat a la vostra organització, no dubteu a contacte l'autor.
Què en penseu de les proves DevOps? Creieu que aconseguir que els desenvolupadors i les operacions treballin junts poden beneficiar el projecte?
Feu-nos saber els vostres comentaris / suggeriments sobre aquest article.
com veure fitxers .bin
Lectura recomanada
- Proves contínues en DevOps
- Tutorial DevOps: la guia definitiva de DevOps (25+ tutorials)
- Desmitificació de DevOps: tutorial de vídeo (primera part)
- Top 10 d'eines de prova contínua per a proves DevOps (Llista 2021)
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Què són les proves de programari? Més de 100 tutorials gratuïts sobre proves manuals
- Proves funcionals contra proves no funcionals
- Proves alfa i proves beta (guia completa)