【问题标题】:How to generate HTML reports on Play ScalaTest如何在 Play ScalaTest 上生成 HTML 报告
【发布时间】:2016-08-31 14:15:15
【问题描述】:

我的目的是生成一个可读的 HTML 测试报告,该报告将捕获功能测试引发的我的特性/场景。我正在使用FeatureSpec 进行测试。 (然后我可以将此报告展示给我的产品团队以供他们接受)。

我在 Play 控制台上尝试了以下选项:

test-only -h target/html-report MySpecFile 

这个生成了一堆 js & css 文件,但我没有看到 html 文件。

我也尝试在我的 sbt 文件中添加这个:

testOptions in Test += Tests.Argument(TestFrameworks.ScalaTest, "-u", "target/test-reports")

这只会生成一个xml文件。

感谢您的帮助。我在 Google 上搜索了答案,但到目前为止还没有找到可行的解决方案。

【问题讨论】:

    标签: scala playframework scalatest


    【解决方案1】:

    您必须添加 ScalaTest 依赖项以及用于生成 HTML 报告的 Pegdown:

    libraryDependencies ++= Seq(
      "org.pegdown" % "pegdown" % "1.6.0" % Test,
      "org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test
    )
    

    作为documented,生成HTML报告的正确参数是-h-u用于开启JUnit XML报告器)。因此,您还可以在 build.sbt 文件中添加以下行:

    testOptions in Test ++= Seq(
      Tests.Argument(TestFrameworks.ScalaTest, "-u", "target/test-reports"),
      Tests.Argument(TestFrameworks.ScalaTest, "-h", "target/test-reports")
    )
    

    我不确定您是否需要两者,但如果您愿意,当然可以删除 -u。之后,运行sbt test 将在target/test-reports/index.html 生成一个HTML 报告。当同时使用testtest-only 命令时,添加此配置将启用报告生成。

    【讨论】:

    • 感谢您的回答。我的错误是我没有包含“pegdown”依赖项。
    猜你喜欢
    • 1970-01-01
    • 2020-03-22
    • 2013-09-14
    • 2012-11-13
    • 2014-07-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多