Я использую инфраструктуру Selenium + Cucumber + Junit для автоматизации тестовых сценариев в Java. Результаты теста показаны в отчетах по степени огурца. Я также реализовал механизм повторного запуска сценария ios в своей структуре. У меня есть несколько файлов запуска для запуска тестовых случаев различных приложений в одной и той же среде.
Так что каждый раз после завершения выполнения в целевой папке 1 создаются два отчета об экстентах. Результат. html (это имя файла задается по-разному в каждом файле бегуна в зависимости от приложения) 2. Rerunresult. html (это константа для каждого файла бегуна)
Мой фактический файл бегуна выглядит следующим образом
@RunWith(Cucumber.class)
@CucumberOptions(
features = {"classpath:features/ABCapplication"},
glue = "net.company.com.testsuites",
plugin = {"json:target/cucumber-parallel/ABCapplication.json", "rerun:target/rerun.txt",
"com.vimalselvam.cucumber.listener.ExtentCucumberFormatter:target/ABCapplicationResult.html"}
)
public class ABCapplicationTest {
@AfterClass
public static void writeExtentReport() {
Reporter.loadXMLConfig(new File(System.getProperty("user.dir") + "\\src\\main\\resources"+Hooks.getTestProperty("reportConfigPath")));
}
}
Чтобы перезапустить неудачный сценарий ios, файл бегуна выглядит следующим образом:
@RunWith(Cucumber.class)
@CucumberOptions(features = {"@target/rerun.txt"},
glue = "net.company.com.testsuites",
plugin = {"json:target/cucumber-parallel/Failed.json",
"com.vimalselvam.cucumber.listener.ExtentCucumberFormatter:target/Rerunresult.html"}
)
public class FailedTest {
}
Как кодировать в java, чтобы прикрепить эти 2 файла к электронному письму, особенно отчет первого экстента, чей имя Dynami c в зависимости от приложения.