Benvinguts al món de proves de programari , que garanteix la qualitat i fiabilitat de aplicacions de programari . Comprendre els diferents tipus de proves de programari és essencial tant per als desenvolupadors com per als professionals de la garantia de qualitat.
En aquesta guia, explorarem les categories fonamentals de proves de programari, des de les proves d'unitat fins a les proves de seguretat, per ajudar-vos a navegar i assegurar-vos que el vostre programari compleixi els estàndards més alts de rendiment i funcionalitat.
Taula de contingut
- Principis de proves de programari
- Diferents tipus de proves de programari
- Tipus de proves manuals
- Tipus de proves de caixa negra
- Tipus de proves funcionals
- Tipus de proves d'integració
- Tipus de proves no funcionals
- Altres tipus de proves
- Avantatges de les proves de programari
- Desavantatges de les proves de programari
- Preguntes per a la pràctica
- Preguntes freqüents sobre tipus de proves de programari
Principis de proves de programari
- Totes les proves han de complir els requisits del client.
- Per fer el nostre programari, les proves han de ser realitzades per un tercer.
- No es poden fer proves exhaustives. Ja que necessitem la quantitat òptima de proves en funció de l'avaluació del risc de l'aplicació.
- Totes les proves a realitzar s'han de planificar abans d'implementar-la
- Segueix la regla de Pareto (regla 80/20) que estableix que el 80% dels errors provenen del 20% dels components del programa.
- Comenceu a provar amb peces petites i esteneu-la a peces grans.
- Tipus de proves

Tipus de proves de programari
Diferents tipus de proves de programari
- Prova manual
- Proves d'automatització
1. Prova manual
Prova manual és una tècnica per provar el programari que es realitza utilitzant les funcions i característiques d'una aplicació. En les proves manuals de programari, un verificador realitza proves al programari seguint un conjunt de casos de prova predefinits. En aquestes proves, els verificadors fan casos de prova per als codis, proveen el programari i donen l'informe final sobre aquest programari. Les proves manuals requereixen molt de temps perquè les fan humans i hi ha la possibilitat d'errors humans.
Avantatges de les proves manuals
- Retroalimentació visual ràpida i precisa: Detecta gairebé tots els errors de l'aplicació de programari i s'utilitza per provar els dissenys de GUI que canvien dinàmicament, com ara el disseny, el text, etc.
- Menys costós: És menys costós, ja que no requereix cap habilitat d'alt nivell ni un tipus d'eina específic.
- No es requereix cap codificació: No es requereix cap coneixement de programació mentre s'utilitza el mètode de prova de caixa negra. És fàcil d'aprendre per als nous provadors.
- Eficient per a canvis no planificats: Les proves manuals són adequades en cas de canvis no planificats a l'aplicació, ja que es poden adoptar fàcilment.
2. Proves d'automatització
Proves automatitzades és una tècnica on el Tester escriu scripts per si mateix i utilitza el programari o l'eina d'automatització adequada per provar el programari. És un procés d'automatització d'un procés manual. Permet executar tasques repetitives sense la intervenció d'un verificador manual.
Avantatges de les proves d'automatització:
- Simplifica l'execució de casos de prova: Les proves d'automatització es poden deixar pràcticament desateses i, per tant, permeten el seguiment dels resultats al final del procés. Així, simplificant l'execució global de la prova i augmentant l'eficiència de l'aplicació.
- Millora la fiabilitat de les proves: Les proves d'automatització garanteixen que hi hagi un enfocament igual en totes les àrees de les proves, garantint així la millor qualitat del producte final.
- Augmenta la quantitat de cobertura de la prova: Mitjançant proves d'automatització, es poden crear i executar més casos de prova per a l'aplicació sota prova. Així, es tradueix en una major cobertura de proves i la detecció de més errors. Això permet provar aplicacions més complexes i es poden provar més funcions.
- Minimització de la interacció humana: A les proves d'automatització, tot està automatitzat, des de la creació de casos de prova fins a l'execució, de manera que no hi ha canvis per error humà per negligència. Això redueix la necessitat de solucionar problemes en la fase posterior al llançament.
Tipus de proves manuals
- Prova de caixa blanca
- Prova de la caixa negra
- Prova de caixa grisa
1. Prova de caixa blanca
Prova de caixa blanca Les tècniques analitzen les estructures internes, les estructures de dades utilitzades, el disseny intern, l'estructura del codi i el funcionament del programari en lloc de només la funcionalitat com en les proves de caixa negra. També s'anomena proves de caixa de vidre proves de caixa clara o proves estructurals. La prova de caixa blanca també es coneix com a prova transparent o prova de caixa oberta.
La prova de caixa blanca és una tècnica de prova de programari que consisteix a provar l'estructura interna i el funcionament d'una aplicació de programari. El verificador té accés al codi font i utilitza aquest coneixement per dissenyar casos de prova que poden verificar la correcció del programari a nivell de codi.
Avantatges de les proves de caixa blanca:
- Prova exhaustiva : Les proves de caixa blanca són exhaustives, ja que es prova tot el codi i les estructures.
- Optimització del codi: Es tradueix en l'optimització del codi eliminant errors i ajuda a eliminar línies addicionals de codi.
- Detecció precoç de defectes: Pot començar en una fase anterior, ja que no requereix cap interfície com en el cas de les proves de caixa negra.
- Integració amb SDLC: Les proves de caixa blanca es poden iniciar fàcilment al cicle de vida del desenvolupament de programari.
- Detecció de defectes complexos: Els verificadors poden identificar defectes que no es poden detectar mitjançant altres tècniques de prova.
2. Prova de la caixa negra
Les proves de caixa negra són un tipus de proves de programari en què el provador no es preocupa pel coneixement intern ni els detalls d'implementació del programari, sinó que se centra a validar la funcionalitat en funció de les especificacions o requisits proporcionats.
emet una cadena com int java
Avantatges de les proves de la caixa negra:
- El verificador no necessita tenir més coneixements funcionals o habilitats de programació per implementar les proves de la caixa negra.
- És eficient per implementar les proves en el sistema més gran.
- Les proves s'executen des del punt de vista de l'usuari o del client.
- Els casos de prova són fàcilment reproduïbles.
- S'utilitza per trobar l'ambigüitat i les contradiccions en les especificacions funcionals.
3. Prova de caixa grisa
Prova de caixa grisa és una tècnica de prova de programari que és una combinació de Prova de la caixa negra tècnica i la Prova de caixa blanca tècnica.
- A la tècnica de proves de la caixa negra, el verificador desconeix l'estructura interna de l'element que s'està provant i a la prova de la caixa blanca, l'estructura interna la coneix.
- L'estructura interna es coneix parcialment a Gray Box Testing.
- Això inclou l'accés a estructures de dades internes i algorismes per dissenyar els casos de prova.
Avantatges de les proves de la caixa grisa:
- Claredat dels objectius: Els usuaris i desenvolupadors tenen objectius clars mentre fan proves.
- Fet des de la perspectiva de l'usuari: Les proves de caixa grisa es fan principalment des de la perspectiva de l'usuari.
- No es requereixen altes habilitats de programació: Els provadors no han de tenir habilitats de programació elevades per a aquesta prova.
- No intrusiu: Les proves de caixa grisa no són intrusives.
- Millora de la qualitat del producte: La qualitat general del producte es millora.
Tipus de proves de caixa negra
- Prova funcional
- Proves no funcionals
1. Proves funcionals
Les proves funcionals són un tipus de proves de programari en què el sistema es prova amb els requisits i especificacions funcionals. Les proves funcionals garanteixen que l'aplicació compleixi correctament els requisits o les especificacions. Aquest tipus de proves es preocupa especialment pel resultat del processament. Se centra en la simulació de l'ús real del sistema, però no desenvolupa cap hipòtesi d'estructura del sistema. L'article se centra a parlar de les proves de funció.
Beneficis de les proves funcionals
- Producte sense errors: Les proves funcionals garanteixen el lliurament d'un producte d'alta qualitat i sense errors.
- La satisfacció del client: Assegura que es compleixen tots els requisits i assegura que el client està satisfet.
- Proves centrades en especificacions: Les proves funcionals es centren en les especificacions segons l'ús del client.
- Funcionament correcte de l'aplicació: Això garanteix que l'aplicació funcioni com s'esperava i garanteix el bon funcionament de totes les funcionalitats de l'aplicació.
- Millora la qualitat del producte: Les proves funcionals garanteixen la seguretat i la seguretat del producte i milloren la qualitat del producte.
2. Proves no funcionals
Proves no funcionals és un tipus de Proves de programari que es realitza per verificar els requisits no funcionals de l'aplicació. Verifica si el comportament del sistema és segons el requisit o no. Comprova tots els aspectes que no es comprova en proves funcionals. Les proves no funcionals són una tècnica de prova de programari que verifica els atributs no funcionals del sistema. Les proves no funcionals es defineixen com un tipus de proves de programari per comprovar aspectes no funcionals d'una aplicació de programari. Està dissenyat per provar la preparació d'un sistema segons paràmetres no funcionals que mai s'aborden mitjançant proves funcionals. Les proves no funcionals són tan importants com les proves funcionals.
Beneficis de les proves no funcionals
- Rendiment millorat: Les proves no funcionals comproven el rendiment del sistema i determinen els colls d'ampolla de rendiment que poden afectar el rendiment.
- Menys temps: En general, les proves no funcionals requereixen menys temps que l'altre procés de prova.
- Millora l'experiència de l'usuari: Les proves no funcionals, com ara les proves d'usabilitat, comproven la facilitat d'ús i la facilitat d'ús del programari per als usuaris. Per tant, centreu-vos a millorar l'experiència general de l'usuari de l'aplicació.
- Producte més segur: Com que les proves no funcionals inclouen específicament proves de seguretat que comprovan els colls d'ampolla de seguretat de l'aplicació i quina és la seguretat de l'aplicació davant atacs de fonts internes i externes.
Tipus de proves funcionals
- Prova unitat
- Proves d'integració
- Prova del sistema
1. Test unitari
Prova unitària és un mètode per provar unitats o components individuals d'una aplicació de programari. Normalment ho fan els desenvolupadors i s'utilitza per assegurar-se que les unitats individuals del programari funcionen com es pretén. Les proves d'unitat solen ser automatitzades i estan dissenyades per provar parts específiques del codi, com ara una funció o un mètode concret. Les proves unitàries es fan al nivell més baix del procés de desenvolupament de programari , on les unitats de codi individuals es proveen de manera aïllada.
Avantatges de les proves unitàries:
A continuació es detallen alguns dels avantatges de les proves unitàries.
- Ajuda a identificar errors al principi del procés de desenvolupament abans que siguin més difícils i costosos de solucionar.
- Ajuda a garantir que els canvis al codi no introdueixen nous errors.
- Fa que el codi sigui més modular i més fàcil d'entendre i mantenir.
- Ajuda a millorar la qualitat general i la fiabilitat del programari.
Nota: Alguns marcs i eines populars que s'utilitzen per a les proves unitàries inclouen JUnit , NUnit, i xUnitat.
- És important tenir en compte que les proves unitàries són només un aspecte de les proves de programari i s'han d'utilitzar en combinació amb altres tipus de proves, com ara proves d'integració, proves funcionals i proves d'acceptació per garantir que el programari compleix les necessitats dels seus usuaris. .
- Se centra en la unitat més petita de disseny de programari. En això, posem a prova una unitat individual o un grup d'unitats interrelacionades. Sovint ho fa el programador utilitzant l'entrada de mostra i observant les seves sortides corresponents.
Exemple:
- En un programa estem comprovant si el bucle, mètode o funció funciona bé.
- Precedència aritmètica mal entesa o incorrecta.
- Inicialització incorrecta.
2. Proves d'integració
Proves d'integració és un mètode per provar com les diferents unitats o components d'una aplicació de programari interactuen entre si. S'utilitza per identificar i resoldre qualsevol problema que pugui sorgir quan es combinen diferents unitats del programari. Les proves d'integració es fan normalment després de les proves d'unitat i abans de les proves funcionals i s'utilitzen per verificar que les diferents unitats del programari funcionen juntes tal com es pretén.
Diferents maneres de realitzar proves d'integració:
A continuació es comenten diferents maneres de proves d'integració.
- Proves d'integració de dalt a baix: comença amb els mòduls de més alt nivell i els diferencia dels mòduls de nivell inferior.
- Proves d'integració de baix a dalt: comença amb els mòduls de nivell més baix i els integra amb mòduls de nivell superior.
- Proves d'integració Big-Bang: combina tots els mòduls i els integra tots alhora.
- Prova d'integració incremental: Integra els mòduls en grups reduïts, provant cada grup a mesura que s'afegeix.
Avantatges d'integrar les proves
- Ajuda a identificar i resoldre problemes que poden sorgir quan es combinen diferents unitats del programari.
- Ajuda a garantir que les diferents unitats del programari funcionin juntes tal com es pretén.
- Ajuda a millorar la fiabilitat i l'estabilitat generals del programari.
- És important tenir en compte que les proves d'integració són essencials per a sistemes complexos on s'integren diferents components.
- Igual que amb les proves d'unitat, les proves d'integració són només un aspecte de les proves de programari i s'han d'utilitzar en combinació amb altres tipus de proves, com ara proves d'unitats, proves funcionals i proves d'acceptació per garantir que el programari compleix les necessitats dels seus usuaris.
El objectiu és agafar components provats per unitats i construir una estructura de programa que hagi estat dictada pel disseny. Les proves d'integració són proves en què un grup de components es combina per produir resultats.
Les proves d'integració són de quatre tipus: (i) Top-down (ii) Bottom-up (iii) Sandwich (iv) Big-Bang
Exemple:
- Prova de la caixa negra: S'utilitza per a la validació. En això, ignorem els mecanismes de treball interns i ens centrem en quin és el resultat?
- Prova de caixa blanca: S'utilitza per a la verificació. En això, ens centrem en els mecanismes interns, és a dir, com s'aconsegueix el resultat.
3. Prova del sistema
La prova del sistema és un tipus de prova de programari que avalua la funcionalitat i el rendiment globals d'una solució de programari completa i totalment integrada. Comprova si el sistema compleix els requisits especificats i si és adequat per al lliurament als usuaris finals. Aquest tipus de proves es realitza després de les proves d'integració i abans de les proves d'acceptació.
què és ymail
Prova del sistema és un tipus de proves de programari que es realitza en un sistema totalment integrat per avaluar el compliment del sistema amb els requisits corresponents. A les proves del sistema, els components superats de les proves d'integració es prenen com a entrada. L'objectiu de les proves d'integració és detectar qualsevol irregularitat entre les unitats integrades.
Avantatges de les proves del sistema:
- Els verificadors no requereixen més coneixements de programació per dur a terme aquestes proves.
- Provarà tot el producte o programari de manera que detectarem fàcilment els errors o defectes que no es puguin identificar durant les proves d'unitat i les proves d'integració.
- L'entorn de prova és similar al de l'entorn de producció o negoci en temps real.
- Comprova tota la funcionalitat del sistema amb diferents scripts de prova i també cobreix els requisits tècnics i comercials dels clients.
- Després d'aquesta prova, el producte cobreix gairebé tots els possibles errors o errors i, per tant, l'equip de desenvolupament continuarà amb confiança amb les proves d'acceptació.
Tipus de proves d'integració
- Prova incremental
- Proves no incrementals
1. Proves incrementals
Igual que el desenvolupament, les proves també són una fase de SDLC (Cicle de vida de desenvolupament de programari) . Es realitzen diferents proves en diferents etapes del cicle de desenvolupament. Les proves incrementals són un dels enfocaments de prova que s'utilitzen habitualment en el camp del programari durant la fase de prova de proves d'integració que es realitza després proves unitàries . S'utilitzen diversos talons i controladors per provar els mòduls un rere un, cosa que ajuda a descobrir errors i defectes en els mòduls específics.
Avantatges de les proves incrementals
- Cada mòdul té el seu significat específic. Cadascun té un paper a jugar durant les proves, ja que s'incrementen individualment.
- Els defectes es detecten en mòduls més petits en lloc de denotar errors i després editar i tornar a corregir fitxers grans.
- És més flexible i rendible segons els requisits i els àmbits.
- El client té l'oportunitat de respondre a cada edifici.
Hi ha 2 tipus de Prova incremental
- Proves d'integració de dalt a baix
- Proves d'integració de baix a dalt
1. Proves d'integració de dalt a baix
Proves de dalt a baix és un tipus d'incremental proves d'integració enfocament en què les proves es fan integrant o unint dos o més mòduls movent-se cap avall de dalt a baix a través del flux de control de l'estructura de l'arquitectura. En aquests, primer es posen a prova els mòduls d'alt nivell i després els de baix nivell. Després, finalment, es fa la integració per garantir que el sistema funciona correctament. Per dur a terme aquest projecte s'utilitzen talons i controladors. Aquesta tècnica s'utilitza per augmentar o estimular el comportament dels Mòduls que no estan integrats en un nivell inferior.
Avantatges Proves d'integració de dalt a baix
- No cal escriure controladors.
- Els errors de la interfície s'identifiquen en una fase inicial i la localització d'errors també és més fàcil.
- Les utilitats de baix nivell que no són importants no es posen a prova bé i els provadors d'alt nivell es posen a prova d'una manera adequada.
- La representació dels casos de prova és més fàcil i senzilla un cop s'afegeixen les funcions d'entrada-sortida.
2. Proves d'integració de baix a dalt
Proves de baix a dalt és un tipus d'incremental proves d'integració enfocament en què les proves es fan integrant o unint dos o més mòduls movent-se cap amunt de baix a dalt a través del flux de control de l'estructura de l'arquitectura. En aquests, primer es posen a prova els mòduls de baix nivell i després els d'alt nivell. Aquest tipus de prova o enfocament també es coneix com a raonament inductiu i s'utilitza com a sinònim de síntesi en molts casos. Les proves de baix a dalt són proves fàcils d'utilitzar i tenen com a resultat un augment del desenvolupament global de programari. Aquesta prova dóna lloc a alts índexs d'èxit amb resultats duradors.
Avantatges de les proves d'integració de baix a dalt
- És fàcil i senzill crear i desenvolupar condicions de prova.
- També és fàcil observar els resultats de les proves.
- No cal conèixer els detalls del disseny estructural.
- Les utilitats de baix nivell també es posen a prova bé i també són compatibles amb l'estructura orientada a objectes.
Tipus de proves no funcionals
- Prova de rendiment
- Prova d'usabilitat
- Proves de compatibilitat
1. Proves de rendiment
Prova de rendiment és un tipus de prova de programari que garanteix que les aplicacions de programari funcionin correctament sota la càrrega de treball prevista. És una tècnica de prova realitzada per determinar el rendiment del sistema en termes de sensibilitat, reactivitat i estabilitat sota una càrrega de treball determinada.
Les proves de rendiment són un tipus de proves de programari que se centren a avaluar el rendiment i l'escalabilitat d'un sistema o aplicació. L'objectiu de les proves de rendiment és identificar colls d'ampolla, mesurar el rendiment del sistema en diferents càrregues i condicions i assegurar-se que el sistema pot gestionar el nombre esperat d'usuaris o transaccions.
Avantatges de les proves de rendiment
- Les proves de rendiment garanteixen la velocitat, la capacitat de càrrega, la precisió i altres rendiments del sistema.
- Identifica, supervisa i resol els problemes si passa alguna cosa.
- Assegura la gran optimització del programari i també permet que molts usuaris l'utilitzin al mateix temps.
- Assegura la satisfacció del client i del client final. Les proves de rendiment tenen diversos avantatges que la converteixen en un aspecte important de les proves de programari:
- Identificació de colls d'ampolla : Les proves de rendiment ajuden a identificar colls d'ampolla al sistema, com ara consultes de base de dades lentes, memòria insuficient o congestió de la xarxa. Això ajuda els desenvolupadors a optimitzar el sistema i assegurar-se que pot gestionar el nombre esperat d'usuaris o transaccions.
2. Proves d'usabilitat
Dissenyeu un producte (per exemple, una nevera) i quan estigui completament llest, necessiteu que un client potencial el provi per comprovar que funciona. Per entendre si la màquina està preparada per sortir al mercat, els clients potencials proveen les màquines. De la mateixa manera, el millor exemple de proves d'usabilitat és quan el programari també se sotmet a diversos processos de prova que realitzen usuaris potencials abans de llançar-se al mercat. Forma part del cicle de vida del desenvolupament de programari (SDLC).
Avantatges i desavantatges de les proves d'usabilitat
Es prefereix la prova d'usabilitat per avaluar un producte o servei provant-lo amb els usuaris adequats. A les proves d'usabilitat, els equips de desenvolupament i disseny utilitzaran per identificar problemes abans de codificar i el resultat serà que es resoldran problemes anteriors. Durant una prova d'usabilitat, podeu,
- Esbrineu si els participants seran capaços de completar la tasca específica completament.
- identificar quant de temps trigarà a completar la tasca específica.
- Ofereix excel·lents característiques i funcionalitats al producte
- Millora la satisfacció dels usuaris i compleix els requisits basats en els comentaris dels usuaris
- El producte es torna més eficient i eficaç
3. Proves de compatibilitat
Les proves de compatibilitat són proves de programari que inclouen proves no funcionals categoria, i es realitza en una aplicació per comprovar la seva compatibilitat (capacitat d'execució) en diferents plataformes/entorns. Aquesta prova només es fa quan l'aplicació es torna estable. Això vol dir simplement que aquesta prova de compatibilitat té com a objectiu comprovar la funcionalitat de l'aplicació de programari desenvolupada en diversos programes, plataformes de maquinari, navegadors de xarxes, etc. Aquesta prova de compatibilitat és molt important des del punt de vista de la producció i implementació del producte, ja que es realitza per evitar futurs problemes de compatibilitat.
Avantatges de les proves de compatibilitat
- Assegura la completa satisfacció del client.
- Ofereix servei a diverses plataformes.
- Identificació d'errors durant el procés de desenvolupament.
Hi ha 4 tipus de Prova de rendiment
- Prova de càrrega
- Proves d'estrès
- Proves d'escalabilitat
- Prova d'estabilitat
1. Prova de càrrega
La prova de càrrega determina el comportament de l'aplicació quan diversos usuaris l'utilitzen alhora. És la resposta del sistema mesurada en condicions de càrrega variables.
- La prova de càrrega es realitza per a condicions de càrrega normals i extremes.
- Les proves de càrrega són un tipus de prova de rendiment que simula una càrrega real en un sistema o aplicació per veure com funciona sota estrès.
- L'objectiu de les proves de càrrega és identificar colls d'ampolla i determinar el nombre màxim d'usuaris o transaccions que el sistema pot gestionar.
- És un aspecte important de les proves de programari, ja que ajuda a assegurar-se que el sistema pot gestionar els nivells d'ús esperats i identificar qualsevol problema potencial abans que el sistema es desplega a producció.
Avantatges de les proves de càrrega:
Les proves de càrrega tenen diversos avantatges que la converteixen en un aspecte important de les proves de programari:
- Identificació de colls d'ampolla: Les proves de càrrega ajuden a identificar colls d'ampolla al sistema, com ara consultes de base de dades lentes, memòria insuficient o congestió de la xarxa. Això ajuda els desenvolupadors a optimitzar el sistema i assegurar-se que pot gestionar el nombre esperat d'usuaris o transaccions.
- Escalabilitat millorada: En identificar la capacitat màxima del sistema, les proves de càrrega ajuden a garantir que el sistema pot gestionar un nombre creixent d'usuaris o transaccions al llarg del temps. Això és especialment important per als sistemes i aplicacions basats en web que s'espera que gestionen un gran volum de trànsit.
- Fiabilitat millorada: Les proves de càrrega ajuden a identificar qualsevol problema potencial que es pugui produir en condicions de càrrega pesada, com ara un augment de les taxes d'error o temps de resposta lents. Això ajuda a garantir que el sistema sigui fiable i estable quan es desplega a producció.
2. Proves d'estrès
En Proves d'estrès , donem condicions desfavorables al sistema i comprovem com funciona en aquestes condicions.
Exemple:
- S'executen casos de prova que requereixen la màxima memòria o altres recursos.
- Casos de prova que poden provocar gols en un sistema operatiu virtual.
- Casos de prova que poden provocar un requisit excessiu de disc Proves de rendiment.
Està dissenyat per provar el rendiment en temps d'execució del programari en el context d'un sistema integrat. S'utilitza per provar la velocitat i l'eficàcia del programa. També s'anomena prova de càrrega. En ell, comprovem quin és el rendiment del sistema en la càrrega donada.
Exemple:
convertir booleà en cadena
Comprovació de diversos cicles del processador.
3. Proves d'escalabilitat
Prova d'escalabilitat és un tipus de proves no funcionals en què es prova el rendiment d'una aplicació de programari, sistema, xarxa o procés pel que fa a la seva capacitat per augmentar o reduir el nombre de càrrega de sol·licituds d'usuari o altres atributs de rendiment. Es pot dur a terme a nivell de maquinari, programari o base de dades. Les proves d'escalabilitat es defineixen com la capacitat d'una xarxa, sistema, aplicació, producte o procés per realitzar correctament la funció quan es fan canvis en la mida o el volum del sistema per satisfer una necessitat creixent. Assegura que un producte de programari pot gestionar l'augment programat del trànsit d'usuaris, el volum de dades, la freqüència del recompte de transaccions i moltes altres coses. Posa a prova la capacitat del sistema, els processos o la base de dades per satisfer una necessitat creixent.
Avantatges de les proves d'escalabilitat
- Proporciona més accessibilitat al producte.
- Detecta problemes amb la càrrega de pàgines web i altres problemes de rendiment.
- Troba i soluciona els problemes anteriorment al producte, cosa que estalvia molt de temps.
- Assegura l'experiència de l'usuari final sota la càrrega específica. Proporciona satisfacció al client.
- Ajuda a fer un seguiment efectiu de l'ús d'eines.
4. Proves d'estabilitat
Prova d'estabilitat és un tipus de prova de programari per comprovar la qualitat i el comportament del programari sota diferents paràmetres ambientals. Es defineix com la capacitat del producte per continuar funcionant al llarg del temps sense fallar.
Es tracta d'una tècnica de prova no funcional que se centra a estresar al màxim el component del programari. Les proves d'estabilitat es fan per comprovar l'eficiència d'un producte desenvolupat més enllà de la capacitat operativa normal que es coneix com a punt d'interrupció. Té una importància més alta en la gestió d'errors, la fiabilitat del programari, la robustesa i l'escalabilitat d'un producte amb una càrrega pesada en lloc de comprovar el comportament del sistema en circumstàncies normals.
Les proves d'estabilitat avaluen els problemes d'estabilitat. Aquesta prova està destinada principalment a comprovar si l'aplicació es bloquejarà en qualsevol moment o no.
Avantatges de les proves d'estabilitat
- Dóna el límit de les dades que un sistema pot gestionar pràcticament.
- Proporciona confiança en el rendiment del sistema.
- Determina l'estabilitat i robustesa del sistema sota càrrega.
- Les proves d'estabilitat condueixen a una millor experiència d'usuari final.
Altres tipus de proves
- Prova de fum
- Proves de seny
- Prova de regressió
- Prova d'acceptació
- Prova d'acceptació d'usuaris
- Prova exploratòria
- Proves adhoc
- Proves de seguretat
- Proves de globalització
- Prova de regressió
- Prova de fum
- Prova Alfa
- Prova beta
- Proves orientades a objectes
1. Prova de fum
Prova de fum es fa per assegurar-se que el programari que s'està provant està llest o estable per a més proves
S'anomena prova de fum, ja que la prova d'una passada inicial es fa per comprovar si no s'ha incendiat ni s'ha produït fum en l'encesa inicial.
Exemple:
If the project has 2 modules so before going to the module make sure that module 1 works properly.>
Avantatges de les proves de fum
- La prova de fum és fàcil de realitzar.
- Ajuda a identificar defectes en les primeres etapes.
- Millora la qualitat del sistema.
- Les proves de fum redueixen el risc de fracàs.
- Les proves de fum faciliten l'accés al progrés.
2. Proves de seny
És un subconjunt de proves de regressió . Es realitzen proves de seny per assegurar-se que els canvis de codi que es fan funcionen correctament. Les proves de seny són una aturada per comprovar si les proves de la compilació poden continuar o no. L'objectiu de l'equip durant el procés de prova de seny és validar la funcionalitat de l'aplicació i no les proves detallades. Les proves de salut generalment es realitzen en una compilació on el desplegament de producció es requereix immediatament com una correcció d'errors crítics.
Avantatges de les proves de seny
- Les proves de seny ajuden a identificar ràpidament els defectes de la funcionalitat bàsica.
- Es pot dur a terme en menys temps ja que no es requereix documentació per a les proves de seny.
- Si es troben els defectes durant les proves de seny, el projecte es rebutja, la qual cosa és útil per estalviar temps per a l'execució de proves de regressió.
- Aquesta tècnica de prova no és tan cara en comparació amb un altre tipus de prova.
- Ajuda a identificar els objectes que falten dependents.
3. Proves de regressió
El procés de prova de les parts modificades del codi i de les parts que es podrien veure afectades a causa de les modificacions garanteix que no s'han introduït nous errors al programari després de fer les modificacions. La regressió significa el retorn d'alguna cosa i en el camp del programari, es refereix al retorn d'un error.
Avantatges de les proves de regressió
- Assegura que no s'han introduït nous errors després d'afegir noves funcionalitats al sistema.
- Com que la majoria dels casos de prova utilitzats a les proves de regressió es seleccionen de la suite de proves existent i ja coneixem les seves sortides esperades. Per tant, es pot automatitzar fàcilment mitjançant les eines automatitzades.
- Ajuda a mantenir la qualitat del codi font.
4. Prova d'acceptació
Prova d'acceptació ho fan els clients per comprovar si els productes lliurats compleixen o no les tasques desitjades, tal com s'indica en els requisits. Utilitzem proves orientades a objectes per discutir els plans de prova i per executar els projectes.
Avantatges de les proves d'acceptació
- Aquesta prova ajuda l'equip del projecte a conèixer els requisits addicionals dels usuaris directament, ja que implica els usuaris per a la prova.
- Execució de proves automatitzada.
- Aporta confiança i satisfacció als clients, ja que estan directament implicats en el procés de prova.
- És més fàcil per a l'usuari descriure el seu requisit.
- Cobreix només el procés de prova de Black-Box i, per tant, es provarà tota la funcionalitat del producte.
5. Proves d'acceptació d'usuaris
Prova d'acceptació d'usuaris és una metodologia de prova on els clients/usuaris finals participen en les proves del producte per validar el producte segons els seus requisits. Es fa al lloc del client al lloc del desenvolupador. Per a indústries com la medicina o l'aeroespacial, també es realitzen proves de compliment contractual i normatiu i proves d'acceptació operativa com a part de les proves d'acceptació dels usuaris. La UAT depèn del context i els plans UAT es preparen en funció dels requisits i no estan obligats a realitzar tot tipus de proves d'acceptació d'usuaris i fins i tot són coordinats i aportats per l'equip de proves.
6. Proves exploratòries
Prova exploratòria és un tipus de proves de programari en què el provador és lliure de seleccionar qualsevol metodologia possible per provar el programari. És un enfocament sense guió de les proves de programari. En les proves exploratòries, els desenvolupadors de programari utilitzen el seu aprenentatge, coneixements, habilitats i habilitats per provar el programari desenvolupat per ells mateixos. Les proves exploratòries comprovan la funcionalitat i les operacions del programari, així com identifiquen les fallades funcionals i tècniques del mateix. Les proves exploratòries tenen com a objectiu optimitzar i millorar el programari de totes les maneres possibles.
Avantatges de les proves exploratòries
- Es requereix menys preparació: No requereix preparació, ja que és una tècnica de prova sense guió.
- Troba defectes crítics: Les proves exploratòries impliquen un procés d'investigació que ajuda a trobar defectes crítics molt ràpidament.
- Millora la productivitat: En les proves exploratòries, els provadors utilitzen els seus coneixements, habilitats i experiència per provar el programari. Ajuda a ampliar la imaginació dels provadors executant més casos de prova, millorant així la qualitat general del programari.
7. Proves adhoc
Les proves adhoc són un tipus de proves de programari que es realitzen de manera informal i aleatòria després de completar les proves formals per trobar qualsevol buit al sistema. Per aquest motiu, també es coneix com a prova aleatòria o de mico. Les proves adhoc no es fan d'una manera estructurada per la qual cosa no es basen en cap enfocament metodològic. És per això que les proves adhoc són un tipus de proves de programari no estructurades.
Avantatges de les proves adhoc
- Els errors que no es poden identificar amb casos de prova escrits es poden identificar mitjançant proves adhoc.
- Es pot realitzar en un temps molt limitat.
- Ajuda a crear casos de prova únics.
- Aquesta prova ajuda a construir un producte fort que sigui menys propens a problemes futurs.
- Aquesta prova es pot realitzar en qualsevol moment Procés de cicle de vida de desenvolupament de programari (SDLC)
8. Proves de seguretat
Proves de seguretat és un tipus de Proves de programari que descobreix vulnerabilitats del sistema i determina que les dades i els recursos del sistema estan protegits de possibles intrusos. Assegura que el sistema de programari i l'aplicació estiguin lliures de qualsevol amenaça o risc que pugui causar una pèrdua. Les proves de seguretat de qualsevol sistema se centren a trobar totes les possibles llacunes i debilitats del sistema que puguin provocar la pèrdua d'informació o la reputació de l'organització.
Avantatges de les proves de seguretat
- Identificació de vulnerabilitats: les proves de seguretat ajuden a identificar vulnerabilitats del sistema que podrien ser explotades pels atacants, com ara contrasenyes febles, programari sense pegats i sistemes mal configurats.
- Millora de la seguretat del sistema: les proves de seguretat ajuden a millorar la seguretat general del sistema mitjançant la identificació i la correcció de vulnerabilitats i amenaces potencials.
- Garantir el compliment: les proves de seguretat ajuden a garantir que el sistema compleix els estàndards i les regulacions de seguretat rellevants, com ara HIPAA, PCI DSS i SOC2.
9. Proves de globalització
Les proves de globalització són un tipus de prova de programari que es realitza per garantir que el sistema o l'aplicació de programari pugui funcionar independentment de l'entorn geogràfic i cultural. Assegura que l'aplicació es pot utilitzar a tot el món i accepta tots els textos lingüístics. Actualment, amb l'augment de les diferents tecnologies, cada producte de programari està dissenyat de tal manera que és un producte de programari globalitzat.
Beneficis de les proves de globalització
- Ajuda a crear productes escalables: Fa que el producte de programari sigui més flexible i escalable.
- Estalviar temps: Estalvia temps i esforç en general per a les proves de programari.
- Reduïu el temps per a les proves de localització: Les proves de globalització ajuden a reduir el temps i el cost de les proves de localització.
10. Proves de regressió
Prova de regressió és un mètode de prova que s'utilitza per garantir que els canvis fets al programari no introdueixen nous errors ni provoquen que la funcionalitat existent es trenqui. Normalment es fa després que s'hagin fet canvis al codi, com ara correccions d'errors o funcions noves, i s'utilitza per verificar que el programari encara funciona com es pretén.
Les proves de regressió es poden realitzar de diferents maneres, com ara:
- Tornant a provar : Això implica provar tota l'aplicació o una funcionalitat específica que es va veure afectada pels canvis.
- Re – execució : Això implica executar una sèrie de proves executada prèviament per assegurar-se que els canvis no trenquen cap funcionalitat existent.
- Comparació : Això implica comparar la versió actual del programari amb una versió anterior per assegurar-se que els canvis no trenquen cap funcionalitat existent.
Avantatges de les proves de regressió
- Ajuda a garantir que els canvis fets al programari no introdueixin nous errors ni facin que la funcionalitat existent es trenqui.
- Ajuda a garantir que el programari segueixi funcionant com es pretenia després que s'hagin fet els canvis.
- Ajuda a millorar la fiabilitat i l'estabilitat generals del programari.
- És important tenir en compte que les proves de regressió són un procés continu que s'ha de fer durant tot el procés desenvolupament de software
- cicle de vida per garantir que el programari segueixi funcionant com es preveia. S'ha d'automatitzar tant com sigui possible per estalviar temps i recursos. A més, és important tenir un conjunt de proves de regressió ben definit que cobreixi
Cada vegada que s'afegeix un mòdul nou comporta canvis en el programa. Aquest tipus de proves garanteix que tot el component funcioni correctament fins i tot després d'afegir components al programa complet.
Exemple:
En els registres escolars, suposem que tenim personal de mòduls, estudiants i finances que combinen aquests mòduls i comprovem si la integració d'aquests mòduls funciona bé en les proves de regressió.
11. Prova de fum
Prova de fum es fa per assegurar-se que el programari que s'està provant està llest o estable per a més proves
S'anomena prova de fum, ja que la prova d'una passada inicial es fa per comprovar si no s'ha incendiat ni s'ha produït fum en l'encesa inicial.
Exemple:
Si el projecte té 2 mòduls, abans d'anar al mòdul assegureu-vos que el mòdul 1 funciona correctament.
12. Prova alfa
Prova alfa és un tipus de prova de validació. És un tipus de prova d'acceptació que es fa abans que el producte sigui llançat als clients. Normalment ho fan persones de QA.
menú desplegable javascript
Exemple:
Quan les proves de programari es realitzen internament a l'organització.
13. Prova beta
El prova beta es realitza en un o més llocs del client per l'usuari final del programari. Aquesta versió es publica per a un nombre limitat d'usuaris per fer proves en un entorn en temps real.
Exemple:
Quan es realitzen proves de programari per a un nombre limitat de persones.
14. Proves orientades a objectes
Proves orientades a objectes La prova és una combinació de diverses tècniques de prova que ajuden a verificar i validar el programari orientat a objectes. Aquesta prova es fa de la següent manera:
- Prova de requisits,
- Disseny i anàlisi de proves,
- Prova de codi,
- Proves d'integració,
- Prova del sistema,
- Prova d'usuari.
Avantatges de les proves de programari
- Millora de la qualitat i fiabilitat del programari.
- Identificació precoç i correcció de defectes.
- Millora de la satisfacció del client.
- Augment de la confiança de les parts interessades.
- Costos de manteniment reduïts.
- La satisfacció del client
- Rentable
- Producte de qualitat
- Falla baixa
- Aplicació sense errors
- Seguretat
- Accelera el procés de desenvolupament
- Detecció precoç de defectes
- Producte fiable
Desavantatges de les proves de programari
- Consumeix temps i s'afegeix al cost del projecte.
- Això pot alentir el procés de desenvolupament.
- No es poden trobar tots els defectes.
- Pot ser difícil provar completament sistemes complexos.
- Potencial d'error humà durant el procés de prova.
Preguntes per a la pràctica
1. Pel que fa a les proves de programari, considereu un gràfic de flux G amb un component connectat. Sigui E el nombre d'arestes, N el nombre de nodes i P el nombre de nodes de predicats de G. Considereu les quatre expressions següents: [GATE IT -2006]
- I. E-N+P
- II. E-N+2
- III. P+2
- IV. P+1
La complexitat ciclomàtica de G ve donada per
- (A) I o III
- (B) II o III
- (C) II o IV
- (D) I o IV
Solució: La resposta correcta és (C).
Preguntes freqüents sobre tipus de proves de programari
1. Què és un cas de prova?
Anys: Els casos de prova es poden determinar simplement com a condicions que un verificador comprovarà si el codi funciona perfectament o no.
2. Per a què serveixen les proves d'automatització?
Anys: Les proves d'automatització s'utilitzen per reduir els esforços de prova, també provant una capacitat de lliurament més ràpida.
3. Quina diferència hi ha entre les proves manuals i les automàtiques?
Anys: Les proves manuals impliquen que un verificador humà interactua amb el programari per trobar errors. Les proves automatitzades utilitzen scripts o eines per automatitzar casos de prova repetitius.