我已经开始使用Galen框架来测试我的网站页面的布局,我还有另一个用Selenium编写的测试,集成到Jenkins中。 我正在使用Java + JUnit + Maven,我想知道是否有人设法将Galen报告集成到Jenkins以及如何。 因为目前我使用的是:
assertThat(layoutReport.errors(), is(0));
告诉我测试中是否有错误而不是在哪里。 谢谢!
P.S。如果有声誉的人可以制作标签galen-framework,以便我们可以将这些类型的问题分组,那就太棒了:D
答案 0 :(得分: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报告。
答案 1 :(得分:0)
您可以在此处查看Java(TestNG和JUnit)和JavaScript的完整示例: https://github.com/hypery2k/galen_samples
我将HTML Plugin与Jenkins一起使用,请参阅示例here