0

我在我的一个 Play 2.3.x 应用程序中使用 JGiven 进行测试。该文档解释了如何为 Maven 和 Gradle 生成 HTML 报告。但是 SBT 没有任何可用的东西。

是否有任何解决方法可以在测试结束时生成报告?也许通过添加一些东西build.sbt?我尝试使用“测试中的 javaOptions”,但不知道如何使其工作。

谢谢。

4

2 回答 2

2

请参阅下面我使用专用 SBT 任务的解决方案。

  1. 首先添加jgiven-html5-report依赖:

libraryDependencies += "com.tngtech.jgiven" % "jgiven-html5-report" % "0.15.3" % "test"

  1. 然后声明一个新任务。让我们称之为livingDocumentation

lazy val livingDocumentation = taskKey[Unit]("Generate HTML5 JGiven report") livingDocumentation := Def.sequential( test in Test, runMain in Test toTask " com.tngtech.jgiven.report.ReportGenerator" ).value

使用Def.sequential,我可以链接 2 个任务并确保源 JSON 报告可用。

  1. 最后,使用运行 SBT 任务sbt livingDocumentation
于 2017-12-15T16:11:09.373 回答
0

我不详细了解 SBT,但是,正如 @ahus1 在他的评论中已经提到的那样,您可以只调用com.tngtech.jgiven.report.ReportGenerator主类。例如:

构建.sbt:

libraryDependencies += "com.tngtech.jgiven" % "jgiven-html5-report" % "0.9.3"

在命令行上:

$ sbt
> run-main com.tngtech.jgiven.report.ReportGenerator --sourceDir=target/jgiven-reports/json/ --targetDir=target/jgiven-reports/html

如果您能告诉我您的最终解决方案,那就太好了,以便我可以在 JGiven 文档中记录它。

于 2015-10-25T16:31:00.520 回答