test data management concept
En l’últim tutorial, ens vam centrar en com preparar el banc de proves per minimitzar els defectes de l'entorn de prova . Continuant amb el mateix tutorial, avui aprendrem com configurar i mantenir l'entorn de prova i importantGestió de dades de provestècniques.
Procés de configuració de l'entorn de prova
El factor més important per a l'entorn de prova és replicar-lo el més a prop possible de l'entorn de l'usuari final. Normalment, no s’espera que els usuaris finals realitzin cap configuració o instal·lació per si mateixos, ja que se’ls envia un producte o sistema complet. Per tant, per aquesta definició, fins i tot els equips de prova no necessiten realitzar explícitament aquestes configuracions.
Si es necessita alguna configuració d’aquest tipus a efectes purament de proves (però es configurarà per als usuaris finals), cal identificar els administradors. Aquells administradors que configuren l'entorn de desenvolupament han de ser les mateixes persones que configuren l'entorn de prova.
Si el propi equip de desenvolupament pren la iniciativa d’instal·lació / configuració, hauran d’ajudar a fer el mateix fins i tot a l’entorn de prova.
Per exemple, si heu de provar una aplicació (amb el seu middleware associat per instal·lar-la i configurar-la) en un sistema de diverses plataformes del SO, etc., la millor manera d’abordar-ho és utilitzar virtualització o entorns Cloud .
Disposar d’un sistema mestre on totes les aplicacions i el middleware necessari estiguin instal·lats i configurats correctament. A continuació, feu d’aquest sistema una imatge mestra capturant-lo i clonant diverses instàncies d’aquesta mateixa imatge, de manera que cada usuari senti que té un sistema dedicat amb l’aplicació sotmesa a prova.
A continuació, es mostra una representació pictòrica del que suposaria un procés d’entorn de prova:
Procés de configuració de l'entorn de prova
Què aprendreu:
Manteniment d’un entorn de prova
Molt dit sobre la preparació de l'entorn de prova, tot i que els reptes, sens dubte, això és més que un motiu per necessitar el manteniment o estandarditzar l'entorn de prova. Moltes vegades, un provador perd el temps de prova a causa de problemes ambientals o de configuració.
Amb un ràpid augment dels sistemes operatius i de la gamma de maquinari i programari, l’entorn ha de tenir una naturalesa gairebé dinàmica per fer front a les necessitats. Els equips de proves poden assegurar-se que ofereixen un producte d’alta qualitat amb un bon procés de gestió de proves, cosa que ajudaria a tenir un ús òptim dels recursos disponibles de manera limitada.
Indicadors clau per garantir un manteniment eficaç de l’entorn de prova
Com a entorns de prova, la majoria de vegades contenen plataformes i piles heterogènies, a continuació es presenten alguns indicadors clau per garantir un manteniment eficaç de l’entorn de prova.
# 1) Compartir i distribuir eficaçment l'entorn:
Com ja s'ha esmentat anteriorment, un dels principals reptes de la preparació de l'entorn de prova és que molts equips o persones necessiten utilitzar el mateix conjunt de recursos per a les seves proves. Per tant, cal desenvolupar un mecanisme d’intercanvi adequat que atengui les necessitats de tots els equips i persones sense endarrerir els horaris.
Això es pot aconseguir mantenint un dipòsit o un enllaç d'informació en què es mostrin totes les dades relatives a:
- qui utilitza l'entorn,
- quan el medi ambient és lliure d’utilitzar i
- com s’introdueix amb precisió la distribució del temps d’ús del medi ambient.
En determinar de manera proactiva on el requisit dels recursos és gran en comparació amb la disponibilitat limitada d’ells, s’anul·la automàticament una gran quantitat de caos.
El segon aspecte és revisar els requisits de recursos dels equips per a cadascun cicle de proves i busqueu quins recursos no s’utilitzen molt. Analitzeu si es poden substituir aquests recursos en particular per recursos o sistemes nous que siguin necessaris.
# 2) Comprovacions de sanitat:
Alguns requisits de prova necessiten una configuració o configuració completa de la prova, que implica passos elaborats que requereixen molt de temps. Aquest és específicament el cas durant el proves de punta a punta que implica dos o més components per treballar junts. Per tant, és possible que diversos equips hagin de tornar a utilitzar el mateix entorn de prova.
En aquests casos, tenir una bona comprensió de tot l’entorn en general, recopilar quin tipus de proves estan realitzant diversos equips, farà un quadre raonable per ajudar a proporcionar aquests recursos específics als equips respectius.
Tenint en compte els factors anteriors: es poden realitzar proves bàsiques de seny que ajudaran a agilitzar les proves per a equips individuals o alarmar-les immediatament si l’entorn ha de patir alguns canvis o solucions com a resultat d’aquestes comprovacions de salut.
# 3) Fer un seguiment de qualsevol interrupció:
Igual que tots els equips que posseeixen un entorn de prova, una organització disposa de tots els entorns de prova possibles mantinguts per un equip de suport global.
A més, de la mateixa manera que els equips que posseeixen el seu entorn de prova tenen el seu propi temps d’aturada local en cas d’actualitzacions de firmware / programari, els equips globals també han d’assegurar-se que tots els entorns compleixen els últims estàndards que poden implicar fallades d’alimentació o de xarxa.
Per tant, els que mantenen l’entorn de la prova han de vigilar qualsevol interrupció d’aquest tipus que pugui passar i informar l’equip de prova prèviament per planificar el seu treball en conseqüència.
# 4) Virtualitzar sempre que sigui possible:
Això torna a ser molt rellevant quan cal fer proves compartint l'entorn i hi ha una gran necessitat d'optimització dels recursos. En aquests moments, la solució és utilitzar un entorn virtualitzat, com ara un núvol.
Quan utilitzeu aquest entorn, tot el que han de fer els provadors és proporcionar un instant i aquesta instància, un cop aprovisionada, formarà un banc de proves o un entorn de prova independent que contingui tots els recursos, com ara un sistema operatiu dedicat, una base de dades, un middleware, marcs d'automatització , etc. necessaris per a la prova.
Un cop finalitzades les proves, es poden destruir aquestes instàncies, de manera que es redueixen considerablement els costos d'una organització. Els entorns de núvol són particularment útils per a proves de verificació funcional, àrees de proves d'automatització.
# 5) Proves de regressió / Automatització:
com afegir maven a l'eclipsi
Quan es desenvolupin noves funcions i funcions, proves de regressió cal realitzar aquestes funcions per a cada cicle de llançament. Per tant, tot i que a la part posterior, els entorns de prova per a proves de regressió semblen funcionar en la mateixa configuració de prova amb les mateixes dades, en realitat actualment evolucionen constantment cada versió d’acord amb les funcions que s’implementen també.
Cada cicle de llançament de productes tindria una o més proves de regressió. Així, establir entorns de proves de regressió per a cada cicle de llançament del producte i tornar-los a utilitzar dins del cicle, representaria definitivament l’estabilitat de l’entorn de prova.
El desenvolupament de marcs d'automatització i l'ús de l'automatització per a proves regressives també ajuda a millorar l'eficiència d'un entorn de prova perquè l'automatització assumirà que l'entorn és estable i que els defectes originats són purament orientats a funcions / codi.
# 6) Governança general:
Quan hi ha algun problema amb el maquinari o el programari de l’entorn de prova, aquests problemes s’han d’adreçar a les persones adequades per assegurar-se que no es puguin solucionar internament si mantenen el laboratori.
Per exemple, si alguna prova provoca un defecte que comprèn una limitació del firmware o del programari que s’utilitza a l’entorn actual, generalment no poden solucionar-ho només els responsables del manteniment de l’entorn.
Per tant, s’ha de demanar al consumidor (que és el verificador en aquest cas) que presenti les sol·licituds de servei adequades. Aquests han de dirigir-se al proveïdor o a l’equip adequat i s’ha de coordinar regularment amb ells per garantir que la següent versió s’hagi solucionat al problema concret.
Un altre aspecte de la governança seria proporcionar informes detallats sobre el medi ambient a la direcció o als grups d'interès de tant en tant, cosa que ajuda a emanar transparència i constitueix un bon terreny per a qualsevol anàlisi.
Preparació de dades de proves
Vegem ara la darrera porció de Creació del banc de proves: consisteix en configurar les dades de prova . En dir-se un tros tan gran sobre l'entorn de prova, es pot mesurar la veritable essència de l'entorn de prova, la seva robustesa i eficiència amb les dades de la prova. Per definició, les dades de prova són qualsevol tipus d’entrada que es dóna al codi de programari que s’està provant.
Tot i que dediquem una bona quantitat de temps a dissenyar casos de prova, el motiu pel qual les dades de prova són importants és perquè garanteix una cobertura completa de proves per a tot tipus d’escenaris, millorant així la qualitat. Podrien haver-hi algunes dades de prova que siguin necessàries per a qualsevol prova positiva o positiva.
Algunes altres dades es podrien dissenyar per a proves d’errors o negatives, cosa que és molt útil per descobrir el rendiment de l’aplicació en situacions anormals.
Les dades de prova es creen generalment abans que comenci l’execució del text perquè cada entorn de prova té el seu propi conjunt de complexitats o la preparació de les dades pot ser un procés llarg. Per tant, en general, les fonts de dades de prova poden ser l'equip de desenvolupament intern o els usuaris finals que consumeixen el codi o la funció.
Per exemple,Proves de funcions
Posem un exemple en què heu de fer proves funcionals o proves de caixa negra. Aquí l'objectiu és que el codi hagi de complir funcionalment els requisits especificats.
Per tant, en aquests casos, la preparació de casos de prova generalment hauria de tenir cobertura dels tipus de dades següents:
- Dades de camí positiu: Amb el document de casos d’ús del desenvolupament com a referència, aquestes són les dades generalment sincronitzades amb la realització dels escenaris de camí positiu.
- Dades de camí negatiu: Es tracta de dades que generalment es consideren 'invàlides' pel que fa al funcionament correcte del codi.
- Dades nul·les: No es proporcionen dades quan l'aplicació o el codi esperen aquestes dades.
- Dades errònies: Determinar el rendiment del codi quan es proporcionen dades en un format il·legal.
- Dades de condicions límit: Proveu les dades que es subministren fora de l'índex o de la matriu per determinar el rendiment del codi.
Les dades de les proves tenen un paper clau a l’hora d’identificar on es pot trencar completament un producte o funció. Feu sempre una pràctica d’enquesta i validació del tipus de dades que s’introdueix a l’entorn de prova en les diferents fases de la prova.
Gestió de dades de proves
Quan les dades de les proves tenen un paper tan important a l’hora d’assegurar la qualitat del producte, és raonable dir que la seva gestió i racionalització també tenen un paper igualment important en l’assegurament de la qualitat de qualsevol producte que s’hagi de lliurar als clients.
Necessitat de la gestió de dades de prova i bones pràctiques:
# 1) Hi ha un gran nombre d’organitzacions canviar ràpidament els objectius empresarials per atendre les necessitats de l’usuari final i, per tant, no cal esmentar que les dades de prova adequades són fonamentals per determinar la qualitat de les proves. Això implicarà configurar el tipus exacte de dades per als entorns de prova respectius i controlar els patrons de comportament.
Com ja s’ha comentat, es passa una gran part del temps d’un equip de proves en la planificació de les dades de proves i les seves tasques relacionades. Moltes vegades les proves de qualsevol funcionalitat tendeixen a dificultar-se majoritàriament a causa de la no disponibilitat de dades de prova adequades, cosa que suposa un repte crític pel que fa a la cobertura completa de les proves.
# 2) També de vegades per a certs requisits de proves les dades de les proves s’han d’actualitzar constantment . Això mateix provoca un gran retard en el cicle a causa de la reelaboració constant que també augmenta el cost de l'aplicació que arriba al mercat.
En altres ocasions, si el producte que s’envia està relacionat amb diferents unitats de grups de treball d’una gran organització, la creació i l’actualització de les dades de prova necessiten un nivell de coordinació intricat entre aquests grups de treball.
# 3) Tot i que els equips de prova han de crear tot tipus de dades que siguin possibles per garantir una prova adequada, les organitzacions també han de considerar que fer-ho significa que cal emmagatzemar tots els diferents tipus de dades en algun tipus de dipòsit.
Tot i que tenir un dipòsit és una bona pràctica, emmagatzemar excessivament i dades no desitjades no només augmentaria significativament l’espai d’emmagatzematge per emmagatzemar aquests grans trossos de dades, sinó que també suposaria un desafiament més gran per obtenir les dades adequades per a la prova en qüestió si no hi ha cap manteniment i arxiu de versions d’aquest dipòsit.
La majoria de les organitzacions s’enfronten generalment a aquests reptes comuns pel que fa a les dades de proves. Per tant, cal establir algunes estratègies de gestió per minimitzar el grau d’aquests reptes.
A continuació es presenten algunes metodologies suggerides per a la gestió de les dades de les proves i les mantenen rellevants per a les necessitats de les proves. Les pràctiques següents són molt bàsiques i genèriques, que normalment funcionaran per a la majoria de les organitzacions. La manera com s’adopta és purament discrecional de les respectives organitzacions.
Proveu estratègies de gestió de dades
# 1) Anàlisi de dades
Generalment, les dades de prova es construeixen en funció dels casos de prova que s’han d’executar. Per exemple, en un equip de proves del sistema, el escenari de prova de punta a punta s’ha d’identificar en funció del disseny de les dades de la prova. Això podria implicar una o més aplicacions per funcionar.
Digueu-ho en un producte que fa la gestió de la càrrega de treball: implica l’aplicació del controlador de gestió, les aplicacions de middleware i les aplicacions de base de dades, totes per funcionar en correlació entre elles. Es poden dispersar les dades de prova necessàries per a la mateixa. Cal fer una anàlisi exhaustiva de tots els diferents tipus de dades que es poden requerir per garantir una gestió eficaç.
# 2) Configuració de dades per reflectir l'entorn de producció
Generalment, això és una extensió del pas anterior i permet entendre quin serà l'usuari final o l'escenari de producció i quines dades es requereixen per al mateix. Utilitzeu aquestes dades i compareu-les amb les que existeixen actualment a l’entorn de prova actual. Basant-se en aquesta informació, és possible que calgui crear o modificar noves dades.
# 3) Determinació de la neteja de les dades de prova
Basant-se en el requisit de proves del cicle de llançament actual (on un cicle de llançament pot abastar-se durant molt de temps), és possible que les dades de la prova s’hagin de modificar o crear tal com s’indica al punt anterior. Tot i que aquestes dades de prova no són immediatament pertinents, poden ser necessàries en un moment posterior. Per tant, s’hauria de formular un procés clar per considerar quan es poden netejar les dades de la prova.
# 4) Identifiqueu les dades sensibles i protegiu-les
Moltes vegades, per provar correctament les aplicacions, és possible que calgui una gran quantitat de dades molt sensibles. Per exemple, un entorn de prova basat en el núvol és una opció popular perquè fa proves a la carta de diferents productes.
No obstant això, una cosa tan bàsica com garantir la privadesa de l'usuari en un núvol és motiu de preocupació. Per tant, sobretot en els casos en què haurem de replicar l’entorn de l’usuari, s’ha d’identificar el mecanisme per protegir les dades sensibles. El mecanisme es regeix en gran mesura pel volum de les dades de prova utilitzades.
# 5) Automatització
De la mateixa manera que adoptem l'automatització per executar proves repetitives o per executar les mateixes proves amb diferents tipus de dades, també és possible automatitzar la creació de dades de proves. Això ajudaria a exposar els errors que es poguessin produir respecte a les dades durant les proves. Una manera possible de fer-ho és comparant els resultats produïts per un conjunt de dades de proves seguides. A continuació, automatitzeu aquest procés de comparació.
# 6) Actualització de dades efectiva mitjançant un dipòsit central
Aquesta és, amb diferència, les metodologies més importants i constitueix el cor de la implementació de la gestió de dades. Tots els punts esmentats anteriorment, especialment aquells relacionats amb la configuració de dades i la neteja de dades, es relacionen directament o indirectament amb això.
Es poden estalviar molts esforços en la creació de dades de proves mantenint un dipòsit central que conté tot tipus de dades que es poden requerir per a diversos tipus de proves. Com es fa això? En cicles de prova consecutius, per a un cas de prova nou o per a un cas de prova modificat, comproveu si les dades existeixen al dipòsit. Si no existeix, introduïu primer aquestes dades a l'entorn de prova.
A continuació, es pot dirigir a aquest dipòsit per a futures referències. Ara, per a cicles de llançaments consecutius, l’equip de prova pot utilitzar totes aquestes dades o un subconjunt d’aquestes. L’avantatge no és molt evident? Depenent dels conjunts de dades que s’utilitzen amb freqüència, es poden eliminar fàcilment les dades obsoletes i, per tant, garantir que sempre hi hagi dades correctes, reduint així el cost d’emmagatzemar aquestes dades innecessàries.
En segon lloc, també podeu desar un parell de versions d’aquest dipòsit o podeu revisar-lo segons sigui necessari. Tenir diferents versions del dipòsit pot ajudar en gran mesura a les proves de regressió per identificar quins canvis en les dades poden provocar el trencament del codi.
Conclusió
L'entorn de prova ha de ser de primera importància en tots els equips de prova. Cada cicle de llançament comportarà una gran quantitat de nous reptes per combatre amb un entorn de prova poc fiable i no planificat.
Com a mesura revolucionària, moltes organitzacions estan implementant estratègies com ara formar equips dedicats de manteniment de l'entorn de prova que estableixin determinats marcs per a un manteniment eficaç dels entorns de prova, per garantir cicles d'alliberament més suaus.
La millora de les proves només és un efecte evident de la racionalització de la gestió de dades de proves. Una essència clau d’això és que garanteix una solució rendible per a les organitzacions i que no compromet la fiabilitat del producte.
Feu-nos saber com gestioneu l'entorn de prova i com prepareu les dades de prova? Voleu afegir algun consell?
Lectura recomanada
- Les 14 millors eines de gestió de dades de proves del 2021
- 10 millors eines d'anàlisi de dades per a una gestió perfecta de les dades (LLISTA 2021)
- Tutorial de gestió de proves: una guia definitiva per a la gestió de proves
- Què són les dades de prova? Proveu tècniques de preparació de dades amb exemple
- Funció de pool de dades a IBM Rational Quality Manager per a la gestió de dades de proves
- Creació de Selenium Framework i accés a les dades de proves des d'Excel: tutorial núm. 21 de Selenium
- Prova de generació de dades amb l'eina en línia de GEDIS Studio (part 2)