- Stub
-
Un stub es, en el contexto del testeo del software, un trozo de código usado como sustituto de alguna otra funcionalidad. Un stub puede simular el comportamiento de código existente (tal como un procedimiento en una máquina remota) o ser el sustituto temporal para un código aún no desarrollado. Los stubs son, por tanto, muy útiles para porting, computación distribuida así como en el desarrollo y pruebas de software en general.
Un ejemplo de stub en pseudocódigo podría ser como éste:
BEGIN Temperature = ThermometerRead(Outside) IF Temperature > 40 THEN PRINT "It's HOT!" END IF END
BEGIN ThermometerRead(Source insideOrOutside) RETURN 28 END ThermometerRead
El pseudocódigo de arriba utiliza la función ThermometerRead, que devuelve la temperatura. Aunque se pretende que ThermometerRead obtenga la temperatura de algún dispositivo, la función en este momento no contiene el código necesario. ThermometerRead, en esencia, no simula ningún proceso aunque devuelve un valor legal, permitiendo así probar aunque sea en parte el programa principal. Hay que notar también que aunque acepta un parámetro de tipo Source para determinar si se va a leer la temperatura externa o interna, éste no se usa.Un stub[1] es una rutina que realmente no hace otra cosa que declararse a sí misma y a los parámetros que acepta y que devuelve un valor habitual dentro de los 'escenarios felices' del que llama al stub. Los stubs se usan habitualmente como sustitutos de la implementación aún no finalizada de una interfaz ya definida. El stub contendría sólo el código necesario para que compile y enlace con el resto del programa.
Referencias
Enlaces externos
- A Stub Generation System For C++ (PDF)
- Stub/mock frameworks for Java Review and comparison of stub & mock frameworks for Java
Wikimedia foundation. 2010.