stringtranslate.com

prueba doble

Una prueba doble es un software utilizado en la automatización de pruebas de software que satisface una dependencia de modo que la prueba no necesita depender del código de producción. Un doble de prueba proporciona funcionalidad a través de una interfaz que el software bajo prueba no puede distinguir del código de producción.

Un programador generalmente usa un doble de prueba para aislar el comportamiento del código consumidor del resto del código base.

Una prueba doble suele ser una versión simplificada del código de producción y puede incluir capacidades específicas para las pruebas.

Los dobles de prueba se utilizan para construir arneses de prueba .

Usos

Se puede utilizar una prueba doble para simplificar y acelerar la ejecución de la prueba.

Por ejemplo, un programa que utiliza un servidor de base de datos es relativamente lento y consume importantes recursos del sistema , lo que impide la productividad de las pruebas. Además, un caso de prueba puede requerir valores distintos de los almacenados en la base de datos. Un doble de prueba podría proporcionar un valor estático en lugar de acceder a una base de datos.

Se puede utilizar una prueba doble para probar parte del sistema que está listo para la prueba incluso si sus dependencias no lo están.

Por ejemplo, en un sistema con módulos Inicio de sesión, Inicio y Usuario, supongamos que Inicio de sesión está listo para la prueba, pero los otros dos no. Las funciones consumidas de Inicio y Usuario se pueden implementar como dobles de prueba para que se pueda probar el Inicio de sesión.

Tipos

Los dobles de prueba se categorizan de muchas maneras.

General

Aunque no es universalmente aceptado, Gerard Meszaros [1] clasifica los dobles de prueba como:

Si bien no existe un estándar abierto para las categorías, Martin Fowler usó estos términos en su artículo Mocks Aren't Stubs [2] refiriéndose al libro de Meszaros. Microsoft también utilizó los mismos términos y definiciones en un artículo titulado Explorando la continuidad de los dobles de prueba . [3]

Servicio

Para sistemas y microservicios de arquitectura orientada a servicios (SOA) , los evaluadores utilizan dobles de prueba que se comunican con el sistema bajo prueba a través de un protocolo de red. [4] [5] Estos dobles de prueba reciben nombres diferentes por parte de los proveedores de herramientas. Un término comúnmente utilizado es virtualización de servicios . Otros nombres utilizados incluyen simulación de API , simulación de API, [6] código auxiliar HTTP, simulación de HTTP, doble prueba por cable [7] . [8]

Falso verificado

Una falsificación verificada es un objeto falso cuyo comportamiento se ha verificado para que coincida con el del objeto real mediante un conjunto de pruebas que se ejecutan tanto en la implementación real como en la falsa verificada. [9]

Ver también

Referencias

  1. ^ Meszaros, Gerard (2007). Patrones de prueba xUnit: código de prueba de refactorización . Addison-Wesley. ISBN 978-0-13-149505-0.
  2. ^ Fowler, Martín (2007). "Las burlas no son talones" . Consultado el 29 de diciembre de 2010 .
  3. ^ Seemann, Mark (2007). "Explorando la continuidad de los dobles de prueba" . Consultado el 29 de diciembre de 2010 .
  4. ^ Clemson, Toby "Estrategias de prueba en una arquitectura de microservicio", martinfowler.com , 18 de noviembre de 2014. Recuperado el 7 de diciembre de 2017.
  5. ^ Byars, Brandon. "Prueba de microservicios con Mountebank", Manning Publications , MEAP comenzó en marzo de 2017. ISBN 9781617294778 . Recuperado el 7 de diciembre de 2017. 
  6. ^ Bryant, Daniel "Lanzamiento de la herramienta de simulación de API WireMock v2 con coincidencia de solicitudes y gestión de códigos auxiliares mejorados", InfoQ , 16 de agosto de 2016. Recuperado el 7 de diciembre de 2017.
  7. ^ ThoughtWorks "Radar tecnológico, herramientas: Mountebank", ThoughtWorks , noviembre de 2015. Recuperado el 7 de diciembre de 2017.
  8. ^ Bulaty, Wojciech "Diferencias de virtualización de servicios, burlas y pruebas para equipos de prueba y desarrollo", InfoQ , 19 de febrero de 2016. Recuperado el 7 de diciembre de 2017.
  9. ^ Turner-Trauring, Itamar (2019). "Pruebas rápidas para servicios lentos: por qué deberías utilizar falsificaciones verificadas" . Consultado el 21 de enero de 2019 .

enlaces externos

Gerard Meszarós:

Martín Fowler:

Fuente abierta: