2012-02-27 9 views
10

Estoy usando Specflow (http://specflow.org/) para escribir algunas pruebas de integración y me gustaría ejecutar un solo Escenario. ¿Hay alguna forma de ejecutar un solo escenario con Resharper 6? Por cierto, configuré el flujo de especificaciones para usar MSTest.Cómo ejecutar un único escenario de Flujo de Especificación en Resharper

prueba Mi Specflow parece:

Feature: Customer management 

Scenario: Add a new Customer into system 
    Given the User has entered the customer with the following data 
    | name | last_name | birthday | 
    | Peter | Stein  | 12.09.1955 | 
    When the User has pressed the Save Button 
    Then the following customer should be stored in the data base 
    | name | last_name | birthday | 
    | Peter | Steim | 12.09.1955 | 

Scenario: Second scenario..... 

Scenario: Third scenario..... 

Quiero correr sólo el primer escenario.

Respuesta

10

Si está ejecutando ReSharper como yo lo hago, simplemente abra el archivo de funciones haciendo clic con el botón secundario en cualquier lugar dentro de un escenario y seleccione "Ejecutar escenarios de flujo de datos" en el menú emergente. Funciona solo en el escenario en el que se encuentra.

Tenga en cuenta que estoy usando ReSharper para ejecutar las pruebas.

0

Cada escenario debe terminar convirtiéndose en un MSTest. En ReSharper, normalmente voy al Explorador de pruebas unitarias (Control + Alt + U), me aseguro de que el Grupo está configurado en Proyectos y Espacios de nombres, luego navego a mi proyecto de Prueba de aceptación, abro el espacio de nombres para mi característica (agrupo archivos de características en directorios para ponerlos en espacios de nombres que coincidan) y amplíe la función para ver todas las pruebas/escenarios individuales. Seleccionar solo uno de ellos y hacer clic en el botón Ejecutar o Depurar debería ejecutar esa única prueba.

+0

Hola Michael, gracias por tu respuesta. Esa es una buena solución, pero parece ser una solución alternativa. Lo que estoy buscando es un complemento u otra forma de ejecutar el escenario como lo prueban las unidades. – Diego

+0

Estoy confundido por tu comentario. SpecFlow convierte cada escenario en una prueba unitaria. Mi respuesta fue explicar cómo se puede ejecutar una única prueba unitaria, que es precisamente un escenario. Tal vez no entiendo lo que está buscando ... –

+0

Hola, Michael, tienes razón. Specflow traduce cada escenario en una unidad de pruebas y tu sugerencia funciona. Sin embargo, estaba pensando en una solución en la que seleccioné un Escenario en el editor y lo ejecuté. Por ejemplo, con el reafilado al editar las pruebas unitarias, tenemos un punto verde en el costado para ejecutarlo. Con su sugerencia, tengo que buscar la prueba unitaria generada y me lleva algo de tiempo cuando tengo muchos Escenarios. Tal vez estoy buscando una opción que todavía no se implemente en Resharper. ¿Sabes lo que quiero decir? – Diego

1

lo que hago es abrir el archivo C# generado y encontrar la prueba generada allí y usar mis atajos de teclado que configuré para que el corredor de prueba resharper ejecute las especificaciones (y podría usar las bolas verdes/amarillas con el mouse también). es menos que ideal y estoy de acuerdo que sería increíble si pudieras simplemente ejecutar desde el archivo de características. No he encontrado nada de eso por ahí. Sería un proyecto valioso para tratar de encontrar una manera de hacer que eso suceda con un complemento. no estoy seguro de lo que eso tomaría.

Cuestiones relacionadas