Stub (software testing)

Un stub és un tros de codi que es fa servir per representar alguna funcionalitat d'un component al procés de desenvolupament de programari, en el context d'un desenvolupament top down (primer els compostos, després els components). Un stub pot simular el comportament de codi existent (com ara una subrutina en una màquina remota) o ser un substitut temporal per a un codi que encara no existeix. Per això els stubs són molt útils en portabilitat, computació distribuïda, desenvolupament de software en general i verificació.

Un exemple d'un stub en pseudocodi pot ser com el següent:

BEGIN
Temperature = ThermometerRead(Outside)
IF Temperature > 40 THEN
PRINT "It's HOT!"
END IF
END
BEGIN ThermometerRead(Source insideOrOutside)
RETURN 28
END ThermometerRead

Aquest pseudocodi fa servir la funció 'ThermometerRead' que retorna una temperatura. Tot i que la funció 'ThermometerRead' podria estar concebuda per a llegir algun dispositiu hardware, aquesta funció no conté encara el codi necessari. Així, 'ThermometerRead' en realitat no fa res, però retorna un valor legal, permetent al programa principal ser almenys parcialment provat. Cal notar que encara que accepta el paràmetre del tipus 'Source' que determina si es vol llegir la temperatura interna o externa, realment no el fa servir.

Un Stub[1] és una rutina que no fa realment cap altra cosa que declarar-se a si mateixa i als paràmetres que accepta i retorna quelcom que és habitualment el valor esperat en un dels 'escenaris feliços' per a qui fa la crida. Els stubs es fan servir sovint com a substituts de la implementació d'una interfície coneguda per a la que encara no existeix una implementació finalitzada. L'stub conté el codi just per a permetre que sigui compilat i enllaçat amb la resta del programa.

Vegeu també modifica

Referències modifica

Enllaços externs modifica