example - new icon java
Ejecutar el paso de pepino antes/después de una función específica (3)
¿Usas pepino-jvm? He encontrado un artículo que se ajusta a sus necesidades.
http://zsoltfabok.com/blog/2012/09/cucumber-jvm-hooks/
Básicamente, no use JUnit @BeforeClass y @AfterClass para esto, ya que no están al tanto de las etiquetas de Cucumber Hook. Usted querría que los métodos Init y Teardown se ejecuten para ciertos escenarios, ¿no?
Quiero especificar ciertos pasos de instalación y desmontaje para cada archivo de características específico. He visto enganches que permiten que el código se ejecute antes de cada escenario y enganches para ejecutar código antes de cada función, pero quiero especificar el código para que se ejecute una vez antes y después de que todos los escenarios se ejecuten para una característica específica.
es posible?
Es si está utilizando junit para ejecutar sus pruebas. Usamos las anotaciones para crear una clase de prueba de unidad y una clase de pasos por separado. Las cosas estándar de @Before van en la clase de pasos, pero la anotación @BeforeClass se puede usar en la clase de prueba de la unidad principal:
@RunWith(Cucumber.class)
@Cucumber.Options(format = {"json", "<the report file"},
features = {"<the feature file>"},
strict = false,
glue = {"<package with steps classes"})
public class SomeTestIT {
@BeforeClass
public static void setUp(){
...
}
@AfterClass
public static void tearDown(){
...
}
}
Prueba esto :
En el archivo de características:
@tagToIdentifyThatBeginAfterShouldRunForThisFeatureOnly
Feature : My new feature ....
En Stepdefinitions.java :
@Before("@tagToIdentifyThatBeginAfterShouldRunForThisFeatureOnly")
public void testStart() throws Throwable {
}
@After("@tagToIdentifyThatBeginAfterShouldRunForThisFeatureOnly")
public void testStart() throws Throwable {
}