Articles

Què és la prova de programari, què vol dir provar programari

Les proves de programari són un conjunt de processos per investigar, avaluar i comprovar la integritat i la qualitat del programari escrit per a ordinadors. Assegura el compliment d'un producte de programari pel que fa als requisits normatius, comercials, tècnics, funcionals i d'usuari.

Les proves de programari, o proves de programari, també es coneixen com a proves d'aplicacions.

Les proves de programari són principalment un gran procés format per diversos processos interconnectats. L'objectiu principal de les proves de programari és mesurar la integritat del programari juntament amb la seva integritat en termes dels seus requisits fonamentals. La prova de programari consisteix a examinar i provar programari mitjançant diferents processos de prova. Els objectius d'aquests processos poden incloure:

Verificació de la integritat del programari amb els requisits funcionals/de negoci
Identificar errors/errors tècnics i assegurar-se que el programari està lliure d'errors
Avaluació de la usabilitat, rendiment, seguretat, localització, compatibilitat i instal·lació
El programari provat ha de superar totes les proves perquè estigui complet o apte per al seu ús. Alguns dels diferents tipus de mètodes de prova de programari inclouen proves de caixa blanca, proves de caixa negra i proves de caixa gris. A més, el programari es pot provar com un tot, en components/unitats o dins d'un sistema en viu.

Prova de la caixa negra

Black Box Testing és una tècnica de prova de programari que se centra a analitzar la funcionalitat del programari, pel que fa al funcionament intern del sistema. Black Box Testing es va desenvolupar com un mètode per analitzar els requisits del client, les especificacions i les estratègies de disseny d'alt nivell.

Un verificador de proves de Black Box selecciona un conjunt de condicions d'execució i d'entrada de codi vàlides i no vàlides i comprova si hi ha respostes de sortida vàlides.

Les proves de caixa negra també es coneixen com a proves funcionals o proves de caixa tancada.

Un motor de cerca és un exemple senzill d'una aplicació subjecta a proves de caixa negra. Un usuari de motor de cerca introdueix text a la barra de cerca d'un navegador web. Aleshores, el motor de cerca localitza i recupera els resultats de les dades dels usuaris (sortida).

Els avantatges de les proves de la caixa negra inclouen:

  • Simplicitat: facilita la prova de projectes d'alt nivell i aplicacions complexes
  • Conserva els recursos: els provadors se centren en la funcionalitat del programari.
  • Casos de prova: centreu-vos en la funcionalitat del programari per facilitar el desenvolupament ràpid de casos de prova.
  • Proporciona flexibilitat: no es requereix cap coneixement específic de programació.

Les proves de la caixa negra també tenen alguns desavantatges, com ara:

  • El disseny i el manteniment de casos de prova/script poden ser un repte perquè les eines de prova de Black Box depenen de les entrades conegudes.
  • La interacció amb la interfície gràfica d'usuari (GUI) pot corrompre els scripts de prova.
  • Les proves només es refereixen a les funcions de l'aplicació.

Proves de caixa blanca

Durant les proves de caixa blanca, el codi s'executa amb valors d'entrada preseleccionats per validar els valors de sortida preseleccionats. Les proves de caixa blanca sovint impliquen escriure codi talonari (peça de codi que s'utilitza per substituir una característica específica. Un taló pot simular el comportament del codi existent, com ara un procediment en una màquina remota.) i també controladors.

Els avantatges de les proves de caixa blanca inclouen:

  • Permet la reutilització de casos de prova i ofereix una major estabilitat
  • Facilita l'optimització del codi
  • Facilita la recerca de les ubicacions dels errors ocults en les primeres etapes del desenvolupament
  • Facilita la prova eficaç d'aplicacions
  • Elimina les línies de codi innecessàries


Els desavantatges inclouen:

  • Requereix un verificador experimentat amb coneixements d'estructura interna
  • Pren temps
  • Costos elevats
  • La validació de bits de codi és difícil.
  • Les proves de caixa blanca inclouen proves d'unitats, proves d'integració i proves de regressió.

Prova d’unitat

Una prova d'unitat és un component del cicle de vida de desenvolupament de programari (SDLC) en què s'aplica un procediment de prova exhaustiu individualment a les parts més petites d'un programa de programari per a la idoneïtat o el comportament desitjat.


Una prova d'unitat és un procediment de mesura i avaluació de la qualitat aplicat a la majoria de les activitats de desenvolupament de programari empresarial. En general, una prova d'unitat avalua fins a quin punt el codi del programari s'ajusta a l'objectiu general del programari/aplicació/programa i com la seva idoneïtat afecta altres unitats més petites. Les proves unitàries es poden fer manualment, per un o més desenvolupadors, o mitjançant una solució de programari automatitzada.

Durant les proves, cada unitat està aïllada del programa o interfície principal. Les proves d'unitat es realitzen normalment després del desenvolupament i abans del desplegament, facilitant així la integració i la detecció precoç de problemes. La mida o l'abast d'una unitat varia segons el llenguatge de programació, l'aplicació de programari i els objectius de la prova.

Prova funcional

Les proves funcionals són un procés de prova utilitzat en el desenvolupament de programari on es prova el programari per assegurar-se que compleix tots els requisits. És una manera de comprovar el programari per assegurar-se que té totes les funcionalitats requerides especificades als seus requisits funcionals.


Les proves funcionals s'utilitzen principalment per verificar que un programari proporciona la mateixa sortida que l'usuari final o l'empresa. Normalment, les proves funcionals impliquen avaluar i comparar cada funció del programari amb els requisits empresarials. El programari es prova donant-li algunes entrades relacionades perquè la sortida es pugui avaluar per veure com s'ajusta, es relaciona o varia dels seus requisits bàsics. A més, les proves funcionals també comproven la usabilitat del programari, per exemple assegurant-se que les funcions de navegació funcionen segons les necessitats.

Butlletí d'innovació
No et perdis les notícies més importants sobre innovació. Registra't per rebre'ls per correu electrònic.

Prova de regressió

Les proves de regressió són un tipus de proves de programari que s'utilitzen per determinar si els nous problemes són el resultat de canvis de programari.

Abans d'aplicar un canvi, es prova un programa. Després d'aplicar un canvi, el programa es torna a provar a les àrees seleccionades per detectar si el canvi ha creat nous errors o problemes, o si el canvi real ha servit al propòsit previst.


Les proves de regressió són essencials per a aplicacions de programari grans, ja que sovint és difícil saber si canviar una part d'un problema ha creat un nou problema per a una part diferent de l'aplicació. Per exemple, un canvi a un formulari de sol·licitud de préstec bancari pot donar lloc a la fallada d'un informe de transacció mensual. En la majoria dels casos, els problemes poden semblar no relacionats, però en realitat poden ser la causa de la frustració entre els desenvolupadors d'aplicacions.

Altres situacions que requereixen proves de regressió inclouen detectar si determinats canvis aconsegueixen un objectiu establert o provar nous perills associats a problemes que tornen a sorgir després d'un període sense problemes.

Les proves de regressió modernes es gestionen principalment mitjançant eines de proves comercials especialitzades que prenen instantànies del programari existent que després es comparen després d'aplicar un canvi específic. És gairebé impossible que els provadors humans realitzin les mateixes tasques amb la mateixa eficàcia que els provadors de programari automatitzats. Això és especialment cert amb aplicacions de programari grans i complexes dins de grans entorns informàtics com ara bancs, hospitals, empreses de fabricació i grans distribuïdors.

Proves d’estrès

Les proves d'estrès es refereixen a provar el programari o el maquinari per determinar si el seu rendiment és satisfactori en condicions extremes i desfavorables, que es poden produir com a resultat d'un gran trànsit de xarxa, càrrega de processos, underclocking, overclocking i demandes d'ús màxim de recursos.

La majoria dels sistemes es desenvolupen assumint condicions de funcionament normals. Per tant, fins i tot si es supera un límit, els errors són insignificants si el sistema es posa a prova durant el desenvolupament.


Les proves d'estrès s'utilitzen en els contextos següents:

  • Programari: les proves d'esforç emfatitzen la disponibilitat i la gestió d'errors amb càrregues extremadament pesades per assegurar-se que el programari no es bloqueja a causa de recursos insuficients. Les proves d'estrès del programari se centren en les transaccions identificades per avortar transaccions, que estan molt estressades durant les proves, fins i tot quan no es carrega una base de dades. El procés de proves d'esforç carrega usuaris concurrents més enllà dels nivells normals del sistema per trobar l'enllaç més feble del sistema.
  • Maquinari: les proves d'esforç garanteixen l'estabilitat en entorns informàtics normals.
  • Llocs web: les proves d'esforç determinen els límits de qualsevol funcionalitat del lloc.
  • CPU: es comproven els canvis com ara la sobrevoltació, la subtensió, la subbloqueig i l'overlock per determinar si poden gestionar càrregues pesades mitjançant l'execució d'un programa intensiu de CPU per comprovar si hi ha bloquejos o bloquejos del sistema. La prova d'estrès de la CPU també es coneix com a prova de tortura.

Proves Automàtiques

Les proves automatitzades (automatització de proves de programari) són un enfocament de les proves de codi que fa ús d'eines de programari especials que executen proves automàticament i després comparen els resultats reals de les proves amb els resultats esperats.

Les proves automatitzades tenen un paper important en l'entrega contínua (CD), la integració contínua (CI), DevOps i DevSecOps. Els principals avantatges de les proves automatitzades inclouen:

  • Les proves automatitzades estalvien temps i diners als desenvolupadors, ja que fan que el procés de prova sigui més eficient.
  • Les proves automatitzades identifiquen els errors de manera més eficient que les proves manuals.
  • Quan les proves estan automatitzades, es poden implementar diverses eines de prova en paral·lel.


En el desenvolupament de programari, és especialment útil realitzar proves automatitzades durant el procés de creació per assegurar-se que una aplicació no té errors de compilació i compleix la funció prevista.

Prendre el temps per automatitzar les proves de programari, finalment, estalviarà temps als desenvolupadors reduint el risc que un canvi de codi trenqui la funcionalitat existent.


Les proves són una etapa molt important en el procés de desenvolupament. Assegura que tots els errors s'arreglen i que el producte, programari o maquinari, funcioni com es pretén o tan a prop com sigui possible del seu rendiment objectiu. Les proves automatitzades, més que les proves manuals, són essencials per oferir constantment un programari rendible que satisfà les necessitats dels usuaris de manera oportuna amb defectes mínims.

Tipus de proves automatitzades utilitzades en el desenvolupament de programari
  • Prova d'unitat: prova un sol programa de baix nivell en un entorn aïllat abans de verificar-ne la integració amb altres unitats.
  • Proves d'integració: les proves unitàries i altres components de l'aplicació es posen a prova com una entitat combinada.
  • Proves funcionals: Comproveu si un sistema de programari es comporta com hauria de ser.
  • Proves de rendiment: avalueu la robustesa de l'aplicació amb càrregues superiors a les esperades. Les proves de rendiment sovint revelen colls d'ampolla.
  • Prova de fum: determina si una construcció és prou estable per continuar amb més proves.
  • Prova del navegador: comproveu que els components del programari són compatibles amb diversos navegadors.

Les proves manuals encara es fan en diversos moments durant el desenvolupament, però la fan principalment els desenvolupadors o els mateixos enginyers de maquinari per veure ràpidament si els canvis que han fet han tingut l'efecte desitjat.

Ercole Palmeri

Butlletí d'innovació
No et perdis les notícies més importants sobre innovació. Registra't per rebre'ls per correu electrònic.

Articles recents

El regulador antimonopoli del Regne Unit aixeca l'alarma de BigTech sobre GenAI

La CMA del Regne Unit ha emès una advertència sobre el comportament de Big Tech al mercat de la intel·ligència artificial. Allà…

18 2024 abril

Casa Green: revolució energètica per a un futur sostenible a Itàlia

El Decret "Case Green", formulat per la Unió Europea per millorar l'eficiència energètica dels edificis, ha conclòs el seu procés legislatiu amb...

18 2024 abril

Comerç electrònic a Itàlia al +27% segons el nou Informe de Casaleggio Associati

Presentació de l'informe anual de Casaleggio Associati sobre comerç electrònic a Itàlia. Informe titulat “AI-Commerce: les fronteres del comerç electrònic amb intel·ligència artificial”.…

17 2024 abril

Idea brillant: Bandalux presenta Airpure®, la cortina que purifica l'aire

Fruit de la innovació tecnològica constant i del compromís amb el medi ambient i el benestar de les persones. Bandalux presenta Airpure®, una tenda de campanya...

12 2024 abril