как заставить scalatest генерировать html-отчет через sbt

Способ сделать это для теста на основе spec2 в sbt:

(testOptions in Test) += Tests.Argument(TestFrameworks.Specs2, "html")

а как насчет скалатеста? Я много искал в Google, но не нашел хорошего объяснения/решения.


person Sheng    schedule 10.09.2013    source источник


Ответы (2)


поэтому мне нужно сделать две вещи...

I. использовать любой скалатестовый артефакт после 2.0.M5b. Для себя я добавил эту зависимость,

org.scalatest" %% "scalatest" % "2.0.M6" % "test->*" excludeAll ( ExclusionRule(organization="org.junit", name="junit") )

«test->*» необходим, иначе зависимости, необходимые для генерации html, не будут загружены. (Должен быть лучший способ, чем этот)

II. В build.sbt добавляем

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

person Sheng    schedule 10.09.2013
comment
Это должно быть -h для отчетов в формате html. -u — отчет в формате xml. - person NKijak; 12.08.2014
comment
Это не работает со Scalatest 3.0.7: Symbol 'type org.scalactic.TripleEquals' is missing from the classpath. Он также жалуется на Tolerance и term org.scalactic.source. Любая идея, как обновить это для 3.0? - person Troy Daniels; 26.11.2019

будьте осторожны с этой настройкой.

org.scalest" %% "scalest" % "2.0.M6" % "test->*

Он извлекает некоторую зависимость junit:junit:3.8.1, которую ivy не может разрешить. см. эту ошибку

это лучший способ сделать это в ScalaTest 2.0

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

Это хорошо работает в Дженкинсе

person fracca    schedule 27.02.2014