【发布时间】:2019-01-17 13:46:07
【问题描述】:
我正在使用带有 selenium / C# 的 Extent Reports V3,我刚刚升级到 V4。以前每次运行都会根据日期戳/班级名称/时间戳给我一个独特的报告。但是,在迁移到 V4 之后,它总是将所有内容放在同一个名为“index”的文件和一个名为“dashboard”的单独文件下,该文件位于另一个文件之上,用于导航目的。
这是我开始报告的代码:
htmlReporter = new ExtentHtmlReporter($"C:\\Test-Results\\" + dateStamp + "\\" + TestClassName + " " + timeStamp + ".html");
extent = new ExtentReports();
extent.AttachReporter(htmlReporter);
extent.AddSystemInfo("Host Name", "Extent Framework");
extent.AddSystemInfo("Environment", "Local Machine");
extent.AddSystemInfo("User Name", "MyName");
htmlReporter.LoadConfig(CurrentDirectory + "\\extent-config.xml");
现在,每次我运行测试时,它都会用新的测试结果覆盖现有的索引文件,而不是附加我当前的结果或给我一个唯一的索引文件。如果需要,我可以提供有关如何开始报告/创建测试所需的任何其他信息,但现在这是我的测试文件中的内容:
[ClassInitialize()]
public static void MyClassInitialize(TestContext testContext)
{
report.startReport("Report Name");
}
[ClassCleanup()]
public static void MyClassCleanup()
{
report.Flush();
}
[TestInitialize()]
public void MyTestInitialize()
{
string name = TestContext.TestName;
report.CreateTest(name);
}
【问题讨论】:
-
v4 的增强特性。为了克服它,我们必须在版本 4 中使用 ExtentV3HtmlReporter 类。通过使用这个类,我们将拥有我们拥有的报告。它不会被索引文件覆盖。此外,V4 解决了许多错误。所以使用的东西与第 4 版报告相同。您可以比较这两个报告,然后您就会有自己的解决方案。
-
@IshitaShah 谢谢 Ishita,我没有意识到这个 ExtentV3HtmlReporter 可供我们使用。这确实让我看到了新的范围报告,但使用了我的旧文件组织。作为旁注,我也在研究 klovreporter,由于底层的 mongoDB,该组织似乎更好地内置在 klov 中?
-
还有一点需要注意:ExtentV3HtmlReporter 似乎忽略了配置文件的“黑暗”主题部分。据我所知,在 C# 中,我们没有办法使用代码设置配置。
-
深色主题问题今天已修复。 KlovReporter 即将推出..
-
使用默认版本 4 HtmlReporter,您将创建 4 个文件以保持整体报告的大小和性能。这也是您看到创建多个文件的原因。您现在可以提供一个唯一的文件夹路径来存储所有文件,而不是提供文件路径。尽管有这些变化,我还是强烈推荐使用更新后的 HtmlReporter。
标签: extentreports selenium-extent-report