Saltar a contenido

Tercer escenario

Vamos a implementar el tercer escenario

Escenario: Pagar con puntos
    Dado que he comprado 5 menús del número 1
    Cuando pido la cuenta recibo una factura de 55 euros
    Y pago con 500 puntos y 5 euros
    Entonces la factura está pagada
    Y he obtenido 0 puntos

Si ejecutamos la prueba:

vendor/bin/behat features/menu.feature:30
Característica: Pagar un menú
Reglas:

- 1 punto por cada euro.
- 10 puntos equivalen a un descuento de 1 euros.
- El IVA es del 10%

Antecedentes:                 # features/menu.feature:9
    Dados los siguientes menús: # FeatureContext::losSiguientesMenus()
    | número | precio |
    | 1      | 10     |
    | 2      | 12     |
    | 3      | 8      |

Escenario: Pagar con puntos                            # features/menu.feature:30
    Dado que he comprado 5 menús del número 1            # FeatureContext::queHeCompradoMenusDelNumero()
    Cuando pido la cuenta recibo una factura de 55 euros # FeatureContext::pidoLaCuentaReciboUnaFacturaDeEuros()
    Y pago con 500 puntos y 5 euros                      # FeatureContext::pagoConPuntosYEuros()
    Entonces la factura está pagada                      # FeatureContext::laFacturaEstaPagada()
    Y he obtenido 0 puntos                               # FeatureContext::heObtenidoPuntos()

1 scenario (1 passed)
6 steps (6 passed)
0m0.02s (10.09Mb)

¡La prueba pasa! No tenemos que implementar nada nuevo. Una cuestión importante a la hora de escribir los pasos (steps), es intentarlos escribir siempre de la misma manera, de tal manera que podamos reutilizarlos en sucesivas pruebas. De esta manera, en muchas ocasiones comprobaremos que no tenemos que implementar escenarios porque ya se ejecutan con los pasos definidos en los anteriores.