Anar al contingut

Caixa negra (sistemes)

De L'Enciclopèdia, la wikipedia en valencià
Caixa negra (sistemes)
Esquema d'una caixa negra

La prova de caixa negra, test funcional o prova comportamental, és un tipo de prova de software directa, la finalitat de la qual és analisar la compatibilitat ent les interfaços de cada u dels components del software. No té en consideració la llògica interna del sistema. Permet la revisió final de les especificacions i codificació d'un programa. La prova és considerada acceptable quan la seua eixecució comporta una provabilitat elevada de trobar un error i és satisfactòria quan ho detecta.

El propòsit és reduir el número de casos de prova, pero mantenint l'efectivitat d'esta, és dir, conseguir localisar el major número d'errors possible. Açò es conseguix per mig de l'exhaustiva elecció de les condicions d'entrada i eixida vàlides i no vàlides, que cobrixen totes les funcionalitats del sistema.

Este tipo de prova detecta les següents tipologies d'errors: funcions incorrectes o absents, errors d'inicialización i terminació, de rendiment, errors en estructures de senyes o accessos a bases de senyes i en l'interfaç.

Existixen tres tècniques principals: particions d'equivalència, anàlisis de valors llímits i conjectura d'errors. La prova de caixa negra supon un compendio de tots estos métodos.

Particions d'equivalència

[editar | editar còdic]

Es consideren classes d'equivalència a partir de les condicions d'entrada descrites en les especificacions del sistema. Es considera com a classe d'equivalència al conjunt de senyes d'entrada que s'encarrega de definir els estats vàlits i no vàlits del sistema, considerant com a classe vàlida aquella que genera el valor esperat.

Les condicions d'entrada poden ser estructures de senyes de diversos tipos, tant un valor específic, com un interval, un conjunt de valors o una condició llògica.

El procés a seguir consta dels següents passos:

  • Identificar les classes d'equivalència: per cada condició d'entrada es deuen identificar classes de equivalència vàlides i no vàlides. En funció del tipo d'entrada, existixen una série de criteris per a generar les classes d'equivalència.
Condició entrada Classes vàlides Classes no vàlides
Interval 1 interval comprés en l'interval inicial 2 intervals fòra de ranc, un per davall i un atre per

damunt |-

Valor específic 1 classe que posseïxca eixe valor 2 classes, un valor per davall i un atre per

damunt |-

Conjunt de senyes 1 classe per cada element del conjunt 1 classe d'un element que no pertanyga al conjunt
Condició llògica 1 classe que complixca la condició 1 classe que no complixca la condició
  • Definir els casos de prova: els casos de prova es deuen afegir de manera que cobrixquen el major número de classes d'equivalència vàlides. Per cada classe d'equivalència no vàlida es deu generar un cas de prova. És imprescindible que cada classe estiga coberta en, a lo manco, un cas de prova.

Per a clarificar, les particions d'equivalència aplicades a un cas de test concret es visualisen de la forma següent: Donada un interfaç subjecte als vínculs

  • x és un sancer comprés entre 5 i 10
  • V[ ] és un array de n sancers, n comprés entre 1 i 5
  • C és un conjunt que pot prendre els valors {Rojo, Vert}


Les classes d'equivalència llavors engloben

Element Classes equivalència vàlides Classes equivalència no vàlides
x [5,10] (-,4]

[11, )

V[ ] array que complixca llongitut(V) = n array tal que llongitut(V) != n
n [1,5] (-,0]

[6, )

C {Rojo}

{Vert}

conjunt al que no pertanyga cap dels anteriors valors


I d'esta forma els casos de test es corresponen en

x n V[ ] C Validea
7 2 V[1,2] Rojo Vàlit
7 2 V[1,2] Vert Vàlit
1 2 V[1,2] Rojo No vàlit
15 2 V[1,2] Rojo No vàlit
7 2 V[1,2,3] Rojo No vàlit
7 0 V[ ] Rojo No vàlit
7 7 V[1,1,2,1,3,2,1] Rojo No vàlit
7 2 V[1,2] Groc No vàlit

Anàlisis de valors llímit

[editar | editar còdic]

Esta tècnica es basa en l'evaluació de les condicions llímits, és dir, els valors immediatament per damunt i per baix dels màrgens de les classes d'equivalència. La base d'este argument es fonamenta en l'evidència experimental de que la provabilitat d'aparició dels errors és major en els extrems dels camps d'entrada.

Les classes d'equivalència seguixen el mateix esquema que el procés anterior. Mentres que els casos de prova d'este método es generen de manera que cobrixquen totes les condiciones llímits de les classes d'equivalència.

Condició d'entrada Casos de prova vàlits Casos de prova no vàlits
Interval 2 casos, un en el valor màxim i un atre en el valor mínim 2 casos, un que eixecuta el valor just per damunt del màxim, i un atre just per damunt del mínim
Valor numèric 1 cas que eixecute el valor concret 2 casos, un just per damunt del valor i un atre just per davall
Estructura de senyes 2 casos que eixecuten el primer i últim element de l'estructura

Seguint esta evaluació, els casos de prova de l'eixemple anterior es correspondrien en

x n V[ ] C Validea
5 1 V[1] Rojo Vàlit
10 5 V[1,3,2,3,2] Vert Vàlit
4 1 V[1] Rojo No vàlit
11 1 V[1] Rojo No vàlit
5 0 V[ ] Rojo No vàlit
5 6 V[1,2,3,1,2,1] Rojo No vàlit

Vore també

[editar | editar còdic]