# 12.1 ¿Qué es SpecFlow?

Specflow es una herramienta que nos permite crear nuestras pruebas como una serie de pasos escritos de forma que sean entendidos por cualquier persona con Gherkin o BDD (Behavior Driven Development), el cual cuenta con las siguientes instrucciones principales:

* Feature: Es una descripción a alto nivel para clasificar un grupo de escenario a probar.
* Scenario: Un ejemplo concreto para probar una regla de negocios.
* Given: Permite definir precondiciones para la prueba.
* And: Un paso adicional para definir tus pruebas.
* But: Otro paso adicional para tus pruebas.
* When: Paso para definir la acción de prueba a ejecutar.
* Then: Permite especificar la salida del paso anterior.

Un ejemplo sería el siguiente

```
Feature: Calculadora
       Se prueba las diferentes fuciones de una calculadora
       Suma
       Resta
       Multiplicación
       División

@mytag
Scenario: Suna 2 numeros
       Given Yo tecleo 50 en la calculadora
       And tecleo 70 en la calculadora
       When Yo presiono el boton sumar
       Then El resultado debe ser 120
```

Después con una extensión de Visual Studio tecleamos el código para cada paso, donde podemos pasar variables o una tabla con los datos de tu prueba.

De esta forma puedes documentar tu sistema y a la vez ejecutar tus pruebas de forma automática.

Puedes visitar el sitio de specflow el cual contiene mas ejemplos.

{% embed url="<https://specflow.org>" %}

También puedes revisar el siguiente link con un pdf con un resumen de los comandos y un ejemplo de un test.&#x20;

{% embed url="<https://specflow.org/wp-content/uploads/2022/03/Gherkin_CS_new.pdf>" %}
