O que são um conjunto recente e compatível de Jars para usar Cucumber com Eclipse

Sep 19 2020

Estou procurando a lista de arquivos jar, e suas versões, que são capazes de executar o pepino no Eclipse.

Para executar o Cucumber no Eclipse, preciso de um conjunto compatível de arquivos Jar. Estou usando um conjunto muito desatualizado porque estou achando impossível elaborar um novo conjunto que funcione juntos. Abaixo está a lista de potes que estou usando e que sei que funcionam .. que estão vários anos desatualizados:

cucumber-core-1.2.6.jar cucumber-html-0.2.6.jar cucumber-java-1.2.6.jar cucumber-junit-1.2.5.jar cucumber-jvm-deps-1.0.6.jar cucumber-reporting -3.12.0.jar gherkin-2.12.2.jar junit-4.12.jar mockito-all-2.0.2-beta.jar

Esta manhã baixei um conjunto semelhante da versão 'mais recente' .. e eles apresentam erros:

cucumber-core-6.7.0.jar cucumber-html-0.2.7.jar cucumber-java-6.7.0.jar cucumber-junit-6.7.0.jar cucumber-jvm-deps-1.0.6.jar cucumber-report -generator-1.3.5.jar cucumber-reporting-5.3.1.jar gherkin-15.0.2.jar hamcrest-2.2.jar junit-4.13.jar

Existe em algum lugar uma lista de configuração de versões de trabalho conhecidas?

Respostas

2 M.P.Korstanje Sep 19 2020 at 16:25

Esta manhã baixei um conjunto semelhante da versão 'mais recente' .. e eles apresentam erros:

Se você seguir o tutorial de 10 minutos, obterá uma introdução que usa o gerenciamento de dependência do Maven. E eu recomendo fortemente que você invista tempo aprendendo Maven ou Gradle. Entre outras coisas, essas ferramentas irão automatizar seu gerenciamento de dependências e isso pode tornar sua vida muito mais fácil.

Por exemplo:

Se você deseja usar Cucumber com JUnit 4 e definições de etapa baseadas em anotação, você deve declarar este conjunto mínimo de dependências em um pom.xmlarquivo Maven .

    <properties>
        <cucumber.version>6.7.0</cucumber.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>io.cucumber</groupId>
            <artifactId>cucumber-java</artifactId>
            <version>${cucumber.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>io.cucumber</groupId> <artifactId>cucumber-junit</artifactId> <version>${cucumber.version}</version>
            <scope>test</scope>
        </dependency>
    </dependencies>

Ao dizer ao Maven quais são suas dependências, o Maven pode calcular suas dependências transitivas, ou seja: as dependências de suas dependências.

Isso tem muitas vantagens. Um exemplo seria usar o mvn dependency:treecomando para listar todas as dependências. Isso é muito mais rápido e menos sujeito a erros do que baixar arquivos jar manualmente e esperar que você tenha os corretos.

$ mvn dependency:tree
[INFO] Scanning for projects...
[INFO] 
[INFO] ------------------< cucumber:cucumber-java-skeleton >-------------------
[INFO] Building Cucumber-Java Skeleton 0.0.1
[INFO] --------------------------------[ jar ]---------------------------------
[INFO] 
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ cucumber-java-skeleton ---
[INFO] cucumber:cucumber-java-skeleton:jar:0.0.1
[INFO] +- io.cucumber:cucumber-java:jar:6.7.0:test
[INFO] |  +- io.cucumber:cucumber-core:jar:6.7.0:test
[INFO] |  |  +- io.cucumber:cucumber-gherkin:jar:6.7.0:test
[INFO] |  |  +- io.cucumber:cucumber-gherkin-messages:jar:6.7.0:test
[INFO] |  |  +- io.cucumber:messages:jar:13.0.1:test
[INFO] |  |  +- io.cucumber:tag-expressions:jar:3.0.0:test
[INFO] |  |  +- io.cucumber:cucumber-expressions:jar:10.3.0:test
[INFO] |  |  +- io.cucumber:datatable:jar:3.4.0:test
[INFO] |  |  +- io.cucumber:cucumber-plugin:jar:6.7.0:test
[INFO] |  |  +- io.cucumber:docstring:jar:6.7.0:test
[INFO] |  |  +- io.cucumber:html-formatter:jar:9.0.0:test
[INFO] |  |  \- io.cucumber:create-meta:jar:2.0.2:test
[INFO] |  \- org.apiguardian:apiguardian-api:jar:1.1.0:test
[INFO] +- io.cucumber:cucumber-junit:jar:6.7.0:test
[INFO] \- junit:junit:jar:4.13:test
[INFO]    \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.879 s
[INFO] Finished at: 2020-09-19T18:32:42+02:00
[INFO] ------------------------------------------------------------------------