Prova de programari
(Reconeixement - NoComercial - CompartirIgual) 🅭
Prova de programari
La prova de programari (testing) és una pràctica molt important en el desenvolupament de programari,
ja que ajuda a assegurar que el programa funciona correctament i no té errors. A més, permet detectar
i solucionar els errors abans que arriben a les persones usuàries finals.
Hi ha diferents tipus de proves, cadascun amb un objectiu específic. En general, però, totes consisteixen
a executar casos de prova, és a dir, escenaris concrets que permeten comprovar que el programa
es comporta com s'espera.
És impossible provar tots els casos possibles. No obstant això, com més proves hi haja i més extenses
siguen, més es redueix el risc d'errors.
Etapes del procés de prova
El procés de prova es divideix en diferents etapes:
- Planificació: es defineixen els objectius de les proves, es crea un pla de proves
i es trien les ferramentes i els recursos necessaris.
- Creació dels casos de prova: es creen els casos de prova, que són escenaris o situacions
concretes que es volen provar en el programa. Cada cas especifica els passos que cal seguir,
les dades d'entrada i els resultats esperats.
- Execució dels casos de prova: s'executen els casos de prova seguint els passos especificats
i es comprova que el programa dona els resultats esperats.
- Anàlisi dels resultats: es revisen els resultats obtinguts, es registren els errors trobats
i es decideix quines accions cal prendre per solucionar-los.
- Regressió: una vegada solucionats els errors, es tornen a executar les proves (pas 3) per assegurar
que els canvis no han tingut cap efecte negatiu en altres parts del programa.
- Acceptació: una vegada superats tots els casos de prova i feta una regressió adequada, es considera
que el programa està preparat per lliurar-lo al client o posar-lo en producció.
Classificació de les proves
Les proves es poden classificar segons diversos criteris: com es fan, quin coneixement es té
del sistema i quin és el seu propòsit.
Segons la realització
Segons com es fan, les proves poden ser:
- Manuals: les fa una persona, que executa els casos de prova i n'analitza els resultats.
Normalment es fan quan cal una avaluació visual o quan es vol comprovar el comportament
del programa en escenaris o situacions diferents.
- Automatitzades: es fan amb l'ajuda d'un programa o una ferramenta específica.
Permeten fer un seguiment dels canvis en el programa i detectar qualsevol incidència.
A més, redueixen el temps de prova i asseguren que tots els casos de prova s'executen
sempre de la mateixa manera.
Segons el coneixement del sistema
Segons si s'utilitza el codi font del sistema, les proves poden ser:
- Proves de caixa negra: validen el comportament d'un programa sense tindre en compte
la seua implementació interna. Es basen en les especificacions del programa i en les dades d'entrada
i d'eixida, sense necessitat d'accedir al codi font.
- Proves de caixa blanca: validen el comportament d'un programa tenint en compte la seua implementació
interna. Per tant, cal accedir al codi font i utilitzar tècniques com l'anàlisi o la revisió del codi
per comprovar que es compleixen els criteris de qualitat establerts.
Segons el propòsit
Segons el seu propòsit, destaquen els tipus de proves següents:
- Proves unitàries: comproven el funcionament de cada unitat o mòdul individual del programa.
L'objectiu és assegurar que cada part funciona correctament per si mateixa abans de fer-les
treballar juntes.
- Proves d'integració: comproven el funcionament de les diferents unitats o mòduls del programa
quan treballen junts. Permeten detectar errors que es poden produir en la interacció entre parts.
- Proves de sistema: comproven el funcionament del programa en conjunt. L'objectiu és assegurar
que el programa complet es comporta com s'espera i està preparat per lliurar-lo o posar-lo en producció.
- Proves de validació: comproven que el programa compleix els requisits especificats pel client
o per les persones usuàries finals. És a dir, asseguren que el programa fa el que s'espera que faça.
- Proves de càrrega: comproven com es comporta el programa quan està sotmés a una càrrega de treball
elevada. L'objectiu és assegurar que el programa pot gestionar la càrrega esperada sense fallar.
📌 Aquest document pot quedar desactualitzat després d’imprimir-lo. Pots consultar la versió més recent
a la pàgina web.
🌿 Abans d’imprimir aquest document, considera si és realment necessari. Redueix el consum de paper i ajuda a protegir el nostre entorn.