我的目的是生成一个可读的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搜索了答案,但到目前为止未能获得有效的解决方案。
答案 0 :(得分:5)
您必须添加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报告。添加此配置将在使用test
和test-only
命令时生成报告。