Как мне получить отчеты об объемах огурца для работы с огурцом 5.6.0? - PullRequest
0 голосов
/ 19 апреля 2020

Я перешел из огурца 1.2.5 в огурец 5.6.0. Обновление прошло довольно гладко, однако мои отчеты о протяженности сломались. Я попытался обновить их и использовать адаптер Cucumber 4 . Документация была редкой, и я не мог заставить ее работать. Поэтому я пошел и скачал Пример реализации . Я был в состоянии скомпилировать и запустить его и получать отчеты. Я обновил пример проекта до Cucumber 4.8.1, а Extent Reporter до 4, и он запустился, но отчет не был создан. Я в растерянности, и мои поиски в Google не дали никакой информации.

Вот оригинальный пример проекта: https://github.com/foursyth/extentreports-cucumberN-example

Вот моя попытка обновить это: https://github.com/dougnoel/extentreports-cucumberN-example/tree/update_to_Cucumber4-adapter

Это пом. xml:

    <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <cucumber.version>4.8.1</cucumber.version>
</properties>
<dependencies>
    <dependency>
        <groupId>com.aventstack</groupId>
        <artifactId>extentreports-cucumber4-adapter</artifactId>
        <version>1.0.12</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-core</artifactId>
        <version>${cucumber.version}</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-java</artifactId>
        <version>${cucumber.version}</version>
    </dependency>
    <dependency>
        <groupId>io.cucumber</groupId>
        <artifactId>cucumber-junit</artifactId>
        <version>${cucumber.version}</version>
        <scope>test</scope>
    </dependency>
</dependencies>

Это бегун:

package cucumber.examples.java.calculator;

import org.junit.runner.RunWith;

import io.cucumber.junit.CucumberOptions;
import io.cucumber.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(plugin = {"com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:", "json:target/cucumber-report.json"}
, tags = { "@foo" }
)
public class RunCukesTest {

}

Вот проект, который я обновил до Cucumber 5.6.0 и в котором я пытаюсь поддерживать работу отчетов по экстентам: https://github.com/dougnoel/sentinel/tree/93_update_cucumber

1 Ответ

0 голосов
/ 23 апреля 2020

На этот вопрос Grasshopper ответил в комментарии. Решением были предоставленные им fantasti c инструкции и код .

В пом. xml Я добавил:

<dependency>
    <groupId>com.aventstack</groupId>
    <artifactId>extentreports</artifactId>
    <version>4.1.5</version>
</dependency>

<dependency>
    <groupId>tech.grasshopper</groupId>
    <artifactId>extentreports-cucumber5-adapter</artifactId>
    <version>1.1.0</version>
</dependency>

В моем тесте я добавил:

package cucumber.examples.java.calculator;
import org.junit.runner.RunWith;
import io.cucumber.junit.CucumberOptions;
import io.cucumber.junit.Cucumber;

@RunWith(Cucumber.class)
@CucumberOptions(monochrome = true
    , features = "src/test/java/features"
    , glue = { "stepdefinitions", "com.dougnoel.sentinel.steps" }
    , plugin = {"com.aventstack.extentreports.cucumber.adapter.ExtentCucumberAdapter:"}

Последний элемент - добавление файла конфигурации extent.properties в src/test/resources/ всего с тремя строками:

extent.reporter.html.start=true
extent.reporter.html.out=reports/extent-cucumber-report.html
screenshot.dir=reports/

Теперь все работает как раньше!

...