无法为Allure + BDD(Jbehave)(Thucydides)截屏

时间:2018-08-10 09:18:10

标签: bdd jbehave allure serenity-bdd thucydides

大家好。 有一个使用BDD(Jbehave)(Thucydides)的现成项目

需要将“魅力”报告连接到项目。 为此,AllureReporter是从此处获取的 allure-jbehave-reporter 报告工作正常,一切都很好。

但是有一个大问题,测试是在Selenium Hub上的RemoteWebDriver的帮助下开始的。 我们需要屏幕截图以了解问题所在以及发生的情况。

目前,Allure尚未截屏。 也就是说,屏幕上不会截取屏幕截图,也不会附加屏幕截图。

尝试:

@Attachment(value = "Page screenshot", type = "image/png")
public byte[] saveScreenshot(byte[] screenShot) {
    return screenShot; 
}

public static byte[] takeScreenshot() {
    WebDriver driver = ThucydidesWebDriverSupport.getDriver();
    if (WebDriverFactory.isAlive(driver) && (driver instanceof TakesScreenshot)) {
        return ((TakesScreenshot) driver).getScreenshotAs(OutputType.BYTES);
    }
    return null;
}

Allure.addAttachment()

那都不适合我。

通过这种方式,可以从屏幕上拍摄屏幕快照并添加其指定的文件夹BUT!它们未附加到报告中。

@Attachment(value = "Page screenshot", type = "image/png")
public byte[] saveScreenAsImage() throws IOException {
    WebDriver driver = ThucydidesWebDriverSupport.getDriver();
    File file = ((TakesScreenshot) driver).getScreenshotAs(OutputType.FILE);
    FileUtils.copyFile(file, new File("target/allure-results/" + file.getName()));
    return Files.toByteArray(file);
}

有什么想法可以解决吗?

谢谢。

这是POM

<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-java-commons</artifactId>
    <version>2.6.0</version>
</dependency>
<dependency>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-generator</artifactId>
    <version>2.5.0</version>
</dependency>

<plugin>
    <groupId>io.qameta.allure</groupId>
    <artifactId>allure-maven</artifactId>
    <version>2.9</version>
    <configuration>
        <reportVersion>2.6.0</reportVersion>
        <allureDownloadUrl>https://dl.bintray.com/qameta/generic/io/qameta/allure/allure/2.6.0/allure-2.6.0.zip</allureDownloadUrl>
    </configuration>
    <executions>
        <execution>
            <id>allure-report</id>
            <phase>post-integration-test</phase>
            <goals>
                <goal>report</goal>
            </goals>
        </execution>
    </executions>
</plugin>

0 个答案:

没有答案