■ はじめに
将来的に必要になるであろう Scalaのカバレッジツール (code coverage)について 未来の自分のために調べてみた
目次
【0】Scalaのカバレッジツール 1)メモ:採用候補 【1】sbt-jacoco 【2】sbt-scoverage 【3】Cobertura 【4】その他のJavaのカバレッジツール
【0】Scalaのカバレッジツール
* 調べた限りだと以下。 1)sbt-jacoco 2)sbt-scoverage 3)Cobertura 4)その他のJavaのカバレッジツール => 結局は、Java由来のものがほとんど、、、
1)メモ:採用候補
1)sbt-jacoco 2)sbt-scoverage で、Githubの更新を見る限りまで開発している模様だが リリース頻度は、「2)sbt-scoverage」が優勢か、、、
【1】sbt-jacoco
https://www.scala-sbt.org/sbt-jacoco/index.html
Github
https://github.com/sbt/sbt-jacoco
1)JaCoCo
JaCoCo = Java Code Coverage Library
https://www.jacoco.org/jacoco/trunk/index.html
2)追加方法
* project/plugins.sbt がなければ、自分で新規に追加する
https://www.scala-sbt.org/sbt-jacoco/getting-started.html
project/plugins.sbt
// 追加例 addSbtPlugin("com.github.sbt" % "sbt-jacoco" % "3.5.0")
3)実行方法
sbtコマンド
// For sbt-jacoco
sbt jacoco
【2】sbt-scoverage
https://github.com/scoverage/sbt-scoverage
参考文献
https://yoshinorin.net/articles/2018/08/14/scalatest-and-coverage/
https://qiita.com/mikene_koko/items/72a70a9f7cae03212eae
2)追加方法
* /project/plugins.sbt に以下を追加(なければ自分で作る)
./project/plugins.sbt
addSbtPlugin("org.scoverage" % "sbt-scoverage" % "2.0.8")
https://mvnrepository.com/artifact/org.scoverage/sbt-scoverage
3)実行方法
sbtコマンド
// sbt-scoverage sbt clean coverage test sbt coverageReport // 一気にやるには sbt clean coverage test coverageReport ・・・ [info] Written HTML coverage report [/home/user/flink/hello-flink-kafka-posgre/target/scala-2.12/scoverage-report/index.html] [info] Statement coverage.: 2.73% [info] Branch coverage....: 0.00% [info] Coverage reports completed [info] All done. Coverage was stmt=[2.73%] branch=[0.00%] [success] Total time: 1 s, completed Aug 8, 2023, 12:15:11 AM
【3】Cobertura
* Java に関する関連記事は、以下を参照のこと
【Java】 カバレッジツール ~ Cobertura 編 ~
https://dk521123.hatenablog.com/entry/2015/09/05/140100
【4】その他のJavaのカバレッジツール
* Java に関する関連記事は、以下を参照のこと
【Java】カバレッジツール ~ EclEmma 編 ~
https://dk521123.hatenablog.com/entry/2015/07/11/014015
関連記事
ScalaTest ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/03/27/001306
ScalaTest ~ 基本編 ~
https://dk521123.hatenablog.com/entry/2023/03/28/003906
ScalaTest ~ with Mockito ~
https://dk521123.hatenablog.com/entry/2023/03/31/002830
ScalaTest ~ with ScalaCheck ~
https://dk521123.hatenablog.com/entry/2023/03/29/000014
SBT ~ sbtプラグイン ~
https://dk521123.hatenablog.com/entry/2023/01/25/000000
【Java】カバレッジツール ~ Cobertura 編 ~
https://dk521123.hatenablog.com/entry/2015/09/05/140100
【Java】カバレッジツール ~ EclEmma 編 ~
https://dk521123.hatenablog.com/entry/2015/07/11/014015
Scala ~ 環境構築編 ~
https://dk521123.hatenablog.com/entry/2023/03/10/193805
Scala ~ 入門編 ~
https://dk521123.hatenablog.com/entry/2023/03/12/184331