1

我已经开始使用 Galen 框架来测试我的网站页面的布局,并且我还有我的其他测试,用 Selenium 编写,集成到 Jenkins 中。我正在使用 Java+JUnit+Maven,我想知道是否有人设法将 Galen 报告集成到 Jenkins 中以及如何。因为目前我正在使用类似的东西:

assertThat(layoutReport.errors(), is(0));

它告诉我测试中是否有错误,但不告诉我在哪里。谢谢!

PS 如果有名气的人可以制作标签 galen-framework 以便我们可以对这些类型的问题进行分组,那就太好了:D

4

2 回答 2

2

在您的情况下,您可以使用 Galen 生成 HTML 报告,就像使用它运行测试时通常所做的那样。尽管您将不得不管理GalenTestInfo对象的创建。以下是 HTML 报告生成的工作原理。想象一下,您obtainAllTests定义了某个方法,该方法返回所有已执行测试的列表。

List<GalenTestInfo> tests = obtainAllTests();
new HtmlReportBuilder().build(tests, "target/galen-html-reports");

您可以在代码中的某处创建一个GalenTestInfo并将其添加到某个集合中:

 GalenTestInfo testInfo = GalenTestInfo.fromString("Here goes the name of your test");

完成布局检查并获得LayoutReport对象后,您可以将此报告添加到测试报告中。您可以这样做:

 LayoutReport layoutReport = Galen.checkLayout(driver, 
      specPath, includedTags, null, 
      new Properties(), null);

 testInfo.getReport().layout(layoutReport, "A title for your layout check");

您可以在此项目https://github.com/galenframework/galen-sample-java-tests中找到更多见解。它为 Java + TestNG + Maven 中的 Galen 测试提供了基本设置。其中的报告收集在一个单例中GalenReportsContainer。还实现了一个报告器,GalenReportingListener从中获取所有这些测试GalenReportsContainer并生成 HTML 报告。

于 2015-01-21T20:39:10.877 回答
0

您可以在此处查看 Java(TestNG 和 JUnit)和 JavaScript 的完整示例: https ://github.com/hypery2k/galen_samples 。

我将HTML 插件与 Jenkins 一起使用,请参见此处的示例

于 2015-08-07T11:15:07.530 回答