what is negative testing
Tenir la qualitat del producte més òptima és l’objectiu principal de les organitzacions de proves.
Amb l’ajut d’un procés de garantia de qualitat eficient, els equips de prova ho intenten trobar el màxim de defectes durant les proves , garantint així que el client o l'usuari final que consumeix el producte no vegi cap anomalia respecte al seu funcionament en el seu propi entorn informàtic.
Atès que la recerca de defectes és un dels objectius principals d’un comprovador, ha de dissenyar o dissenyar acuradament els escenaris de prova per assegurar-se que l’aplicació o producte en concret funcioni de la manera que se suposa.
Tot i que definitivament és important verificar que el programari realitza les seves funcions bàsiques tal com es pretenia, és igual o més important verificar que el programari sigui capaç de gestionar amb gràcia una situació anormal. És obvi que la majoria dels defectes sorgeixen de la generació d’aquestes situacions amb una creativitat raonable i acceptable per part dels provadors.
La majoria de nosaltres ja som conscients de diversos tipus de proves, com ara les proves funcionals, proves de seny, proves de fum , proves d'integració, proves de regressió , proves alfa i beta , proves d'accessibilitat, etc. Tanmateix, tothom estarà d'acord que qualsevol categoria de proves que realitzeu, tot l'esforç de prova es pot generalitzar bàsicament en dues categories: camins de prova positius i camins de prova negatius.
Continuem amb les següents seccions per discutir què són les proves positives i negatives, en què són diferents i descriurem alguns exemples per entendre quin tipus de proves negatives es poden realitzar mentre es prova una aplicació.
Què aprendreu:
- Què són les proves positives i negatives?
- Exemples pràctics de proves positives i negatives
- Factors bàsics que ajuden a escriure proves positives i negatives
- Conclusió
- Lectura recomanada
Què són les proves positives i negatives?
Proves positives
Les proves positives, moltes vegades anomenades 'proves de camí feliç', generalment són la primera forma de proves que un provador realitzaria en una aplicació. És el procés d'execució d'escenaris de prova que un usuari final executaria per al seu ús. Per tant, de manera implícita, les proves positives comporten la realització d’un escenari de prova amb només dades vàlides i correctes. Si un escenari de prova no necessita dades, les proves positives requeririen executar la prova exactament de la manera en què se suposa que s’ha d’executar i, per tant, assegurar-se que l’aplicació compleixi les especificacions.
De vegades, pot haver-hi més d’una manera de realitzar una funció o tasca concreta amb la intenció de proporcionar a l’usuari final més flexibilitat o per obtenir una consistència general del producte. Això s’anomena prova de trajectòria alternativa, que també és una mena de prova positiva. En proves de recorregut alternatives, la prova es torna a realitzar per complir els seus requisits, però utilitzant la ruta diferent de la ruta òbvia. L’escenari de prova fins i tot consumiria el mateix tipus de dades per aconseguir el mateix resultat.
Es pot entendre esquemàticament a partir d’un exemple molt genèric que es descriu a continuació:
A és un punt de partida i B és el punt final. Hi ha dues maneres d'anar d'A a B. La ruta 1 és la que es fa generalment i la ruta 2 és una ruta alternativa. Per tant, en aquest cas, les proves de camí feliç serien recórrer del punt A a B mitjançant la ruta 1 i la prova de camí alternativa consistiria a prendre la ruta 2 per anar d’A a B. Observeu que el resultat en tots dos casos és el mateix.
Proves negatives
Proves negatives anomenades habitualment proves de camí d'error o proves d'error generalment es fa per garantir l'estabilitat de l'aplicació.
com executar un fitxer torrent
Les proves negatives són el procés d’aplicar tanta creativitat com sigui possible i validar l’aplicació contra dades no vàlides. Això vol dir que el seu propòsit és comprovar si els errors es mostren a l’usuari on se suposa o si maneja un valor incorrecte amb més gràcia.
És absolutament essencial entendre-ho per què cal fer proves negatives.
La fiabilitat funcional de l’aplicació o del programari només es pot quantificar amb escenaris negatius dissenyats eficaçment. Les proves negatives no només tenen com a objectiu posar de manifest possibles defectes que puguin causar greus impactes en el consum del producte en general, sinó que poden ser fonamentals per determinar les condicions en què l’aplicació pot fallar. Finalment, assegura que hi ha prou validació d'errors al programari.
Exemple:
com afegir matrius a Java
Per exemple, cal escriure casos de prova negatius sobre un bolígraf. El motiu bàsic de la ploma és poder escriure en paper.
Alguns exemples de proves negatives poden ser:
- Canvieu el mitjà en què se suposa que ha d’escriure, de paper a tela o maó i veure si encara ha d’escriure.
- Poseu el bolígraf al líquid i comproveu si torna a escriure.
- Substituïu el recanvi del bolígraf per un de buit i comproveu que deixi d’escriure.
Exemples pràctics de proves positives i negatives
Prenguem un exemple d’un assistent d’interfície d’usuari per crear algunes polítiques. A l'assistent, l'usuari ha d'introduir valors textuals en un panell i valors numèrics en un altre.
Primer panell:
A la primera, s’espera que l’usuari doni un nom a la política com es mostra a continuació:
Obtenim també algunes regles bàsiques per assegurar-nos que dissenyem bons escenaris positius i negatius.
Requisits:
- El quadre de text del nom és un paràmetre obligatori
- La descripció no és obligatòria.
- El quadre de nom només pot tenir caràcters a-z i A-Z. No hi ha números, es permeten caràcters especials.
- El nom pot contenir un màxim de 10 caràcters.
Ara anem a dissenyar els casos de proves positius i negatius per a aquest exemple.
Casos de prova positius: A continuació es mostren alguns escenaris de proves positives per a aquest panell en concret.
- ABCDEFGH (validació en majúscules dins del límit de caràcters)
- abcdefgh validació de minúscules dins del límit de caràcters)
- aabbccddmn (validació del límit de caràcters)
- aDBcefz (majúscules combinades amb validació de minúscules dins del límit de caràcters)
- .. etcètera.
Casos de proves negatius : A continuació es mostren alguns escenaris de proves negatius per a aquest panell en concret.
- ABCDEFGHJKIOOOOOKIsns (nom superior a 10 caràcters)
- abcd1234 (nom amb valors numèrics)
- No s'ha proporcionat cap nom
- sndddwwww_ (el nom que conté caràcters especials)
- .. etcètera.
Segon panell:
Al segon panell, s’espera que l’usuari introdueixi només valors numèrics com es mostra a continuació:
Establim algunes regles bàsiques també aquí:
Requisits:
- L'identificador ha de ser un número d'entre 1 i 250
- El DNI és obligatori.
Per tant, aquí teniu alguns escenaris de prova positius i negatius per a aquest panell en particular.
Escenaris de proves positives : A continuació es mostren alguns escenaris de proves positives per a aquest panell en concret.
- 12 (Introducció d'un valor vàlid entre l'interval especificat)
- 1.250 (Introducció del valor límit de l'interval especificat)
Escenaris de proves negatives : A continuació es mostren alguns escenaris de proves negatius per a aquest panell en concret.
és una clau de seguretat de xarxa igual que una contrasenya
- Ab (Introducció de text en lloc de números)
- 0, 252 (Introducció fora dels valors del límit)
- Entrada nul·la
- -2 (Introducció de valors fora de l'interval)
- +56 (Introducció d'un valor vàlid amb un caràcter especial)
Factors bàsics que ajuden a escriure proves positives i negatives
Si observeu de prop els exemples anteriors, notareu que hi pot haver múltiples escenaris positius i negatius. Tot i que les proves efectives són quan optimitzeu una llista interminable d’escenaris positius i negatius de tal manera que ho feu aconseguir proves suficients .
A més, en tots dos casos, veureu un patró comú sobre com s’elaboren els escenaris. En els dos casos anteriors, hi ha dos paràmetres o tècniques bàsiques que van servir de base per dissenyar una quantitat suficient de casos de prova positius i negatius.
Els dos paràmetres són:
Anàlisi del valor límit :
Com el seu propi nom indica, la frontera indica límits a alguna cosa. Per tant, això implica dissenyar escenaris de prova que només se centrin en els valors límit i validin el comportament de l'aplicació. Per tant, si les entrades es subministren dins dels valors límit, es considera que són proves positives i les entrades més enllà dels valors límit es consideren part de les proves negatives.
Per exemple, si una aplicació concreta accepta identificadors de VLAN que oscil·len entre 0 i 255. Per tant, aquí 0, 255 formarà els valors límit. Qualsevol entrada inferior a 0 o superior a 255 es considerarà invàlida i, per tant, constituirà una prova negativa.
Particionament d'equivalències :
A la partició Equivalence, les dades de la prova es divideixen en diverses particions. Aquestes particions s’anomenen classes de dades d’equivalència. Se suposa que les diverses dades d'entrada (les dades poden ser una condició) en cada partició es comporten de la mateixa manera. Per tant, només cal provar una condició o situació particular a partir de cada partició, com si una funcionés, i se suposa que funcionen totes les altres de la partició. De la mateixa manera, si una condició en una partició no funciona, cap de les altres no funcionarà.
Per tant, ara és molt evident que les classes de dades vàlides (a les particions) inclouran proves positives, mentre que les classes de dades no vàlides seran proves negatives.
En el mateix exemple de VLAN anterior, els valors es poden dividir en dues particions.
Per tant, les dues particions aquí serien:
- Valors -255 a -1 en una partició
- Valors del 0 al 255 en una altra partició
Conclusió
Diverses vegades, m'he trobat amb la situació en què la gent creu que les proves negatives són més o menys una duplicació de les proves positives en lloc de creure el fet que acrediti les proves positives. La meva opinió sobre aquestes preguntes sempre ha estat coherent com a provador. Aquells que entenguin i s’esforcin per obtenir uns estàndards i una qualitat elevats, sens dubte, faran complir les proves negatives com a imprescindibles en el procés de qualitat.
Tot i que les proves positives asseguren que es valida el cas d’ús empresarial, les proves negatives asseguren que el programari lliurat no tingui defectes que puguin dissuadir el seu ús pel client.
Dissenyar escenaris de prova negatius precisos i potents requereix creativitat, previsió, habilitat i intel·ligència del provador. La majoria d’aquestes habilitats es poden adquirir amb experiència, així que pengeu-hi i continueu avaluant el vostre potencial potencial una i altra vegada.
Sobre l'autor: Aquest és un article de Sneha Nadig. Treballa com a responsable de proves amb més de 7 anys d’experiència en projectes de proves manuals i d’automatització.
Feu-nos saber els vostres pensaments i experiència sobre proves negatives.
Lectura recomanada
- Les millors eines de prova de programari 2021 (Eines d'automatització de proves de control de qualitat)
- Prova de descàrrega de llibres electrònics
- Com escriure un informe d'estat setmanal de proves de programari
- Diferència entre la prova d'escriptori, el servidor de clients i la prova web
- Prova de càrrega amb tutorials HP LoadRunner
- Guia de proves de seguretat d'aplicacions web
- Proves d'aplicacions: els conceptes bàsics de la prova de programari.
- Instal·lació de l'aplicació al dispositiu i inici de proves des d'Eclipse