Saltar al contenido

Ejecutar pruebas de Cucumber directamente desde el archivo ejecutable

Hola, tenemos la solución a tu pregunta, has scroll y la hallarás más abajo.

Solución:

Dividiría el problema en el que estás pensando en dos partes.

  • Crear un jar ejecutable
  • Ejecute Cucumber desde su propio método principal

La creación de un jar ejecutable con Maven se puede hacer de diferentes maneras. Aquí se describe una forma de hacerlo: http://www.thinkcode.se/blog/2011/03/05/create-an-executable-jar-from-maven

Es un pequeño ejemplo que solo se enfoca en ejecutar algo desde una línea de comando como esta:

java -jar ejecutable-ejemplo.jar

El ejemplo contiene todas las dependencias. Están todos agrupados en el mismo frasco. No hay necesidad de frascos adicionales.

El siguiente paso sería ejecutar Cucumber desde un método principal. Mi enfoque sería escribir un main que ejecute el método principal de Cucumber utilizado para la versión de línea de comandos de Cucumber. El método principal utilizado para ejecutar pepino desde una línea de comando vive en el cucumber-java biblioteca. Lo encontrarás en cucumber.api.cli.Main

Ejecutar un método principal desde otro método principal se hace así:

public static void main(String[] args) throws Throwable 
    String[] arguments = "foo", "bar";
    cucumber.api.cli.Main.main(arguments);

donde argumentos son los argumentos de la línea de comando con los que siempre desea ejecutar Cucumber.

Dados estos dos pasos, debería poder ejecutar Cucumber desde su propio jar ejecutable donde sea que pueda ejecutar un jar.

Tenga en cuenta que está mezclando la versión de la biblioteca para Cucumber en su pom. Yo usaría la última versión de todas las bibliotecas. Comparar cucumber-java, cucumber-testng y cucumber-junit. La última versión de Cucumber es 1.2.4. Lo usaría para todos.

Puede encontrar más información sobre cómo ejecutar Cucumber desde una línea de comandos aquí: https://cucumber.io/docs/cucumber/api/#from-the-command-line

@SpringBootApplication
public class Application 

    public static void main(final String[] args) throws Throwable 
        // SpringApplication.run(TestApplication.class, args);
        JUnitCore.main(CucumberTest.class.getCanonicalName());
    


Si haces scroll puedes encontrar las explicaciones de otros creadores, tú de igual manera tienes la habilidad insertar el tuyo si lo crees conveniente.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *