¿Cómo probar los cambios de configuración en un servicio?

8

¿Cuál es el mejor enfoque para probar un servicio cuando agrega una nueva configuración? Por ejemplo, mi servicio ofrece un servicio a un cliente y, según la configuración del cliente, ofrecerá un tipo diferente de servicio. P.ej. Si el cliente selecciona una moneda en particular, se le ofrece un descuento del 20% en comparación con otra moneda.

El ejemplo anterior no importa. Lo que importa es el enfoque que las personas toman al hacer CI \ CD

La lógica para calcular el descuento está en el dominio y tiene pruebas unitarias a su alrededor. Mi pregunta es si tiene comerciantes configurados con diferentes reglas para calcular el descuento (todo basado en la configuración y el dominio lo resuelve), luego, si llega una solicitud para cambiar la configuración, ¿cómo se verifica?

  1. ¿Escribes más pruebas?
  2. ¿No realiza la prueba como ya en las pruebas unitarias?
  3. ¿Probar cambios manualmente?
  4. Otro

He leído xUnit Test Patterns y Test-Driven Development junto con muchos artículos, pero no he encontrado cómo las personas manejan esto (cambios de configuración dentro del servicio y verificación de la corrección).

Tampoco veo que esto se aborde en el libro de entrega continua.

    
pregunta Vincent Savard 07.11.2016 - 12:34

2 respuestas

1

Su lógica de negocios ya está probada por pruebas unitarias. ¿Puedes probarlo con diferentes parámetros de configuración fácilmente? Si no, debes separar esos dos:

Config < - Aplicación - > Lógica de negocios

Aquí, por ejemplo, su aplicación se encarga de leer la configuración y simplemente llama a la lógica de negocios con parámetros. Fácil para la prueba de la unidad de esta manera.

En las pruebas de integración, prueba que todo el sistema funciona en conjunto, no la lógica de negocios.

    
respondido por el KaC 08.11.2016 - 15:19
0

Cree una nueva prueba de integración que tenga las condiciones requeridas y un resultado comprobable.

Una parte de la configuración de prueba debe ser la configuración de moneda en la que puede tener la moneda establecida y, por lo tanto, probar descuentos específicos.

    
respondido por el Michael Durrant 26.11.2016 - 02:04

Lea otras preguntas en las etiquetas