2 scala scalatest playframework
我的目的是生成一个可读的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搜索了答案,但到目前为止未能获得有效的解决方案.
您必须添加ScalaTest依赖项以及用于生成HTML报告的Pegdown:
libraryDependencies ++= Seq(
  "org.pegdown" % "pegdown" % "1.6.0" % Test,
  "org.scalatestplus.play" %% "scalatestplus-play" % "1.5.1" % Test
)
如文档所述,生成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将生成HTML报告target/test-reports/index.html.添加此配置将在使用test和test-only命令时生成报告.