我在我的一个 Play 2.3.x 应用程序中使用 JGiven 进行测试。该文档解释了如何为 Maven 和 Gradle 生成 HTML 报告。但是 SBT 没有任何可用的东西。
是否有任何解决方法可以在测试结束时生成报告?也许通过添加一些东西build.sbt
?我尝试使用“测试中的 javaOptions”,但不知道如何使其工作。
谢谢。
我在我的一个 Play 2.3.x 应用程序中使用 JGiven 进行测试。该文档解释了如何为 Maven 和 Gradle 生成 HTML 报告。但是 SBT 没有任何可用的东西。
是否有任何解决方法可以在测试结束时生成报告?也许通过添加一些东西build.sbt
?我尝试使用“测试中的 javaOptions”,但不知道如何使其工作。
谢谢。
请参阅下面我使用专用 SBT 任务的解决方案。
jgiven-html5-report
依赖:libraryDependencies += "com.tngtech.jgiven" % "jgiven-html5-report" % "0.15.3" % "test"
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 报告可用。
sbt livingDocumentation
我不详细了解 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 文档中记录它。