Коллеги, добрый день. Есть в общем то типовой проект Java (maven)
Вот pom файл
<modelVersion>4.0.0</modelVersion>
<groupId>com.selenium.test</groupId>
<artifactId>selenide-tests-example</artifactId>
<version>1.0</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<testng.version>6.9.6</testng.version>
<compiler.version>1.7</compiler.version>
<selenide.version>2.23</selenide.version>
<allure.version>1.4.19</allure.version>
<aspectj.version>1.8.5</aspectj.version>
</properties>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>${compiler.version}</source>
<target>${compiler.version}</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.18.1</version>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
<argLine>
-javaagent:"${settings.localRepository}/org/aspectj/aspectjweaver/${aspectj.version}/aspectjweaver-${aspectj.version}.jar"
</argLine>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
</configuration>
<dependencies>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${aspectj.version}</version>
</dependency>
</dependencies>
<executions>
<execution>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<reporting>
<excludeDefaults>true</excludeDefaults>
<plugins>
<plugin>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</reporting>
<dependencies>
<dependency>
<groupId>com.codeborne</groupId>
<artifactId>selenide</artifactId>
<version>${selenide.version}</version>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>${testng.version}</version>
</dependency>
<dependency>
<groupId>ru.yandex.qatools.allure</groupId>
<artifactId>allure-testng-adaptor</artifactId>
<version>${allure.version}</version>
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
Да я знаю, что Allure подключен через maven-failsafe-plugin
но он работает и собирается. И такое условие поставил мне лид команды разработки. Скриншоты снимаются через Listener
import com.codeborne.selenide.Screenshots;
import com.google.common.io.Files;
import com.selenium.test.utils.ScreenShotUtil;
import org.testng.ITestContext;
import org.testng.ITestListener;
import org.testng.ITestResult;
import ru.yandex.qatools.allure.annotations.Attachment;
import java.io.File;
import java.io.IOException;
public class ScreenShotOnFailListener implements ITestListener {
@Override
public void onTestStart(ITestResult iTestResult) {
}
@Override
public void onTestSuccess(ITestResult iTestResult) {
}
@Override
public void onTestFailure (ITestResult iTestResult) {
try {
screenshot();
} catch (IOException e) {
e.printStackTrace();
}
}
@Override
public void onTestSkipped(ITestResult iTestResult) {
}
@Override
public void onTestFailedButWithinSuccessPercentage(ITestResult iTestResult) {
}
@Override
public void onStart(ITestContext iTestContext) {
}
@Override
public void onFinish(ITestContext iTestContext) {
}
@Attachment(value = "{0}", type = "image/png")
public byte[] screenshot() throws IOException {
File screenshot = Screenshots.getScreenShotAsFile();
return Files.toByteArray(screenshot);
}
}
Тесты запускаются все ходит, отчет формируются но скриншоты сохраняются в папку
C:\Users\user name\AppData\Local\Temp
с именем примерно таким
screenshot3264272613799059149.png
Allure само собой не может их там найти. А я не могу найти где настроить этот параметр. Может быть кто нибудь сталкивался с такой проблемой?